diff options
-rw-r--r-- | src/wasm-ast-checker.c | 4 | ||||
-rw-r--r-- | src/wasm-binary-reader-interpreter.c | 26 | ||||
-rw-r--r-- | src/wasm-interpreter.c | 24 | ||||
-rw-r--r-- | test/interp/callindirect.txt | 8 | ||||
-rw-r--r-- | test/spec/address.txt | 6 | ||||
-rw-r--r-- | test/spec/block.txt | 84 | ||||
-rw-r--r-- | test/spec/br.txt | 46 | ||||
-rw-r--r-- | test/spec/br_table.txt | 88 | ||||
-rw-r--r-- | test/spec/break-drop.txt | 12 | ||||
-rw-r--r-- | test/spec/call_indirect.txt | 120 | ||||
-rw-r--r-- | test/spec/get_local.txt | 24 | ||||
-rw-r--r-- | test/spec/if_label_scope.fail.txt | 4 | ||||
-rw-r--r-- | test/spec/return.txt | 14 | ||||
-rw-r--r-- | test/spec/select.txt | 4 | ||||
-rw-r--r-- | test/spec/set_local.txt | 24 | ||||
-rw-r--r-- | test/spec/start.txt | 6 | ||||
-rw-r--r-- | test/spec/store_retval.txt | 70 | ||||
-rw-r--r-- | test/spec/tee_local.txt | 82 | ||||
-rw-r--r-- | test/spec/typecheck.txt | 1930 |
19 files changed, 1749 insertions, 827 deletions
diff --git a/src/wasm-ast-checker.c b/src/wasm-ast-checker.c index 6b659965..e6f25c9d 100644 --- a/src/wasm-ast-checker.c +++ b/src/wasm-ast-checker.c @@ -645,6 +645,10 @@ static void check_expr(Context* ctx, const WasmExpr* expr) { case WASM_EXPR_TYPE_CALL_INDIRECT: { const WasmFuncType* func_type; + if (!ctx->current_module->table) { + print_error(ctx, CHECK_STYLE_FULL, &expr->loc, + "found call_indirect operator, but no table"); + } if (WASM_SUCCEEDED( check_func_type_var(ctx, &expr->call_indirect.var, &func_type))) { WasmCheckType type = pop_type(ctx); diff --git a/src/wasm-binary-reader-interpreter.c b/src/wasm-binary-reader-interpreter.c index ad11bccb..bcc8193d 100644 --- a/src/wasm-binary-reader-interpreter.c +++ b/src/wasm-binary-reader-interpreter.c @@ -607,12 +607,14 @@ static void pop_typecheck_label(Context* ctx) { } static void push_expr(Context* ctx, WasmType type, WasmOpcode opcode) { - LOGF("%3" PRIzd ": push %s:%s (#%u)\n", ctx->expr_stack.size, - s_opcode_name[opcode], s_type_names[type], ctx->expr_count); - ExprNode* expr; - expr = wasm_append_expr_node(ctx->allocator, &ctx->expr_stack); - expr->index = ctx->expr_count; - expr->type = type; + if (type != WASM_TYPE_VOID) { + LOGF("%3" PRIzd ": push %s:%s (#%u)\n", ctx->expr_stack.size, + s_opcode_name[opcode], s_type_names[type], ctx->expr_count); + ExprNode* expr; + expr = wasm_append_expr_node(ctx->allocator, &ctx->expr_stack); + expr->index = ctx->expr_count; + expr->type = type; + } ctx->expr_count++; } @@ -944,6 +946,9 @@ static WasmResult on_call_indirect_expr(uint32_t sig_index, void* user_data) { Context* ctx = user_data; WasmInterpreterFuncSignature* sig = get_signature(ctx, sig_index); + WasmType entry_index = pop_expr(ctx); + CHECK_RESULT(check_type(ctx, WASM_TYPE_I32, entry_index, "call_indirect")); + uint32_t i; for (i = sig->param_types.size; i > 0; --i) { WasmType arg = pop_expr(ctx); @@ -951,8 +956,6 @@ static WasmResult on_call_indirect_expr(uint32_t sig_index, void* user_data) { check_type(ctx, sig->param_types.data[i - 1], arg, "call_indirect")); } - WasmType entry_index = pop_expr(ctx); - CHECK_RESULT(check_type(ctx, WASM_TYPE_I32, entry_index, "call_indirect")); push_expr(ctx, sig->result_type, WASM_OPCODE_CALL_INDIRECT); return WASM_OK; } @@ -1608,11 +1611,8 @@ static WasmResult on_emit_call_indirect_expr(uint32_t sig_index, WasmInterpreterFuncSignature* sig = get_signature(ctx, sig_index); CHECK_RESULT(emit_opcode(ctx, WASM_OPCODE_CALL_INDIRECT)); CHECK_RESULT(emit_i32(ctx, sig_index)); - uint32_t result_count = get_value_count(sig->result_type); - /* the callee cleans up the params for us, but we have to clean up the - * function table index */ - adjust_value_stack(ctx, result_count - sig->param_types.size); - CHECK_RESULT(emit_discard_keep(ctx, 1, result_count)); + adjust_value_stack(ctx, + get_value_count(sig->result_type) - sig->param_types.size); adjust_value_stack(ctx, -1); CHECK_RESULT(maybe_emit_discard(ctx, ctx->expr_count)); ctx->expr_count++; diff --git a/src/wasm-interpreter.c b/src/wasm-interpreter.c index 5e33aea5..4a8813f5 100644 --- a/src/wasm-interpreter.c +++ b/src/wasm-interpreter.c @@ -594,6 +594,22 @@ static WASM_INLINE void read_table_entry_at(const uint8_t* pc, *out_keep = *(pc + WASM_TABLE_ENTRY_KEEP_OFFSET); } +static WasmBool signatures_are_equal(WasmInterpreterModule* module, + uint32_t sig_index_0, + uint32_t sig_index_1) { + WasmInterpreterFuncSignature* sig_0 = &module->sigs.data[sig_index_0]; + WasmInterpreterFuncSignature* sig_1 = &module->sigs.data[sig_index_1]; + if (sig_0->result_type != sig_1->result_type) + return WASM_FALSE; + if (sig_0->param_types.size != sig_1->param_types.size) + return WASM_FALSE; + size_t i; + for (i = 0; i < sig_0->param_types.size; ++i) + if (sig_0->param_types.data[i] != sig_1->param_types.data[i]) + return WASM_FALSE; + return WASM_TRUE; +} + WasmInterpreterResult wasm_run_interpreter(WasmInterpreterModule* module, WasmInterpreterThread* thread, uint32_t num_instructions, @@ -718,14 +734,12 @@ WasmInterpreterResult wasm_run_interpreter(WasmInterpreterModule* module, case WASM_OPCODE_CALL_INDIRECT: { uint32_t sig_index = read_u32(&pc); assert(sig_index < module->sigs.size); - WasmInterpreterFuncSignature* sig = &module->sigs.data[sig_index]; - uint32_t num_args = sig->param_types.size; - VALUE_TYPE_I32 entry_index = PICK(num_args + 1).i32; + VALUE_TYPE_I32 entry_index = POP_I32(); TRAP_IF(entry_index >= module->func_table.size, UNDEFINED_TABLE_INDEX); WasmInterpreterFuncTableEntry* entry = &module->func_table.data[entry_index]; - TRAP_IF(entry->sig_index != sig_index, - INDIRECT_CALL_SIGNATURE_MISMATCH); + TRAP_UNLESS(signatures_are_equal(module, entry->sig_index, sig_index), + INDIRECT_CALL_SIGNATURE_MISMATCH); PUSH_CALL(); GOTO(entry->func_offset); break; diff --git a/test/interp/callindirect.txt b/test/interp/callindirect.txt index 32a0a797..00800e54 100644 --- a/test/interp/callindirect.txt +++ b/test/interp/callindirect.txt @@ -26,19 +26,19 @@ (export "test_add" $test_add) (func $test_add (result i32) - (call $binary (i32.const 2) (i32.const 10) (i32.const 4))) + (call $binary (i32.const 10) (i32.const 4) (i32.const 2))) (export "test_sub" $test_sub) (func $test_sub (result i32) - (call $binary (i32.const 3) (i32.const 10) (i32.const 4))) + (call $binary (i32.const 10) (i32.const 4) (i32.const 3))) (export "trap_oob" $trap_oob) (func $trap_oob (result i32) - (call $binary (i32.const 4) (i32.const 10) (i32.const 4))) + (call $binary (i32.const 10) (i32.const 4) (i32.const 4))) (export "trap_sig_mismatch" $trap_sig_mismatch) (func $trap_sig_mismatch (result i32) - (call $binary (i32.const 0) (i32.const 10) (i32.const 4)))) + (call $binary (i32.const 10) (i32.const 4) (i32.const 0)))) (;; STDOUT ;;; test_zero() => i32:0 test_one() => i32:1 diff --git a/test/spec/address.txt b/test/spec/address.txt index 3076289e..21316e10 100644 --- a/test/spec/address.txt +++ b/test/spec/address.txt @@ -2,9 +2,9 @@ ;;; STDIN_FILE: third_party/testsuite/address.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/address.wast:34:63: offset must be less than or equal to 0xffffffff -...memory 1) (func $bad1 (param $i i32) (i32.load offset=4294967296 (get_loca... - ^ + third_party/testsuite/address.wast:35:70: offset must be less than or equal to 0xffffffff +...func $bad1 (param $i i32) (drop (i32.load offset=4294967296 (get_local $i)... + ^^^^^^^^ called import spectest.print(i32:97) called import spectest.print(i32:98) called import spectest.print(i32:99) diff --git a/test/spec/block.txt b/test/spec/block.txt index be03cf6a..45813683 100644 --- a/test/spec/block.txt +++ b/test/spec/block.txt @@ -2,21 +2,21 @@ ;;; STDIN_FILE: third_party/testsuite/block.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/block.wast:129:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:129:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func $type-empty-i32 (result i32) (block))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:133:12: unable to join type void (type of last operation) with type i64 (function signature result type). + third_party/testsuite/block.wast:133:11: unable to join type void (type of last operation) with type i64 (function signature result type). (module (func $type-empty-i64 (result i64) (block))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:137:12: unable to join type void (type of last operation) with type f32 (function signature result type). + third_party/testsuite/block.wast:137:11: unable to join type void (type of last operation) with type f32 (function signature result type). (module (func $type-empty-f32 (result f32) (block))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:141:12: unable to join type void (type of last operation) with type f64 (function signature result type). + third_party/testsuite/block.wast:141:11: unable to join type void (type of last operation) with type f64 (function signature result type). (module (func $type-empty-f64 (result f64) (block))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:147:6: maximum arity for block is 1, got 2 (block (i64.const 1) (i64.const 2)) i64.add @@ -34,49 +34,49 @@ assert_invalid error: (block (nop) (i32.const 7) (nop) (i32.const 8)) i32.add ^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:159:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:159:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-value-num-vs-void - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:165:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:165:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func $type-value-void-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:171:12: unable to join type f32 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:171:11: unable to join type f32 (type of last operation) with type i32 (function signature result type). (module (func $type-value-num-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:199:13: type stack size too small at br. got 0, expected at least 1 (block (br 0 (nop))) ^^ assert_invalid error: - third_party/testsuite/block.wast:198:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:198:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-last-void-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:204:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:204:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-last-num-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:210:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:210:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func $type-break-last-empty-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:218:13: type stack size too small at br. got 0, expected at least 1 (block (br 0 (nop))) ^^ assert_invalid error: - third_party/testsuite/block.wast:217:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:217:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-void-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:223:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:223:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-num-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:229:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:229:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func $type-break-empty-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:237:13: type stack size too small at br. got 0, expected at least 1 (block (br 0 (nop)) (i32.const 1)) @@ -86,17 +86,17 @@ assert_invalid error: (block (br 0 (nop)) (i32.const 1)) ^^^^^ assert_invalid error: - third_party/testsuite/block.wast:242:12: unable to join type i64 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:242:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). (module (func $type-break-num-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:249:13: type stack size too small at br. got 0, expected at least 1 (block (br 0 (nop)) (br 0 (i32.const 1))) ^^ assert_invalid error: - third_party/testsuite/block.wast:254:12: unable to join type i64 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:254:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). (module (func $type-break-first-num-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:276:20: type stack size too small at br. got 0, expected at least 1 (block (block (br 1 (nop))) (br 0)) @@ -106,25 +106,25 @@ assert_invalid error: (block (block (br 1 (nop))) (br 0)) ^^ assert_invalid error: - third_party/testsuite/block.wast:275:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:275:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-nested-void-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:281:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/block.wast:281:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-break-nested-num-vs-empty - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:287:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:287:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func $type-break-nested-empty-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:295:20: type stack size too small at br. got 0, expected at least 1 (block (block (br 1 (nop))) (br 0 (i32.const 1))) ^^ assert_invalid error: - third_party/testsuite/block.wast:300:12: unable to join type i64 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:300:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). (module (func $type-break-nested-num-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/block.wast:308:6: type stack size too small at i32.ctz. got 0, expected at least 1 (i32.ctz (block (br 0))) @@ -138,12 +138,12 @@ assert_invalid error: (i64.ctz (block (br 0 (nop)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:314:12: unable to join type i64 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:314:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). (module (func $type-break-operand-void-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/block.wast:320:12: unable to join type i64 (type of last operation) with type i32 (function signature result type). + third_party/testsuite/block.wast:320:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). (module (func $type-break-operand-num-vs-num (result i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14/14 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/br.txt b/test/spec/br.txt index 6765a3ad..59012340 100644 --- a/test/spec/br.txt +++ b/test/spec/br.txt @@ -2,23 +2,51 @@ ;;; STDIN_FILE: third_party/testsuite/br.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/br.wast:342:12: type mismatch of br value. got void, expected i32 - (block (br 0) (i32.const 1)) - ^ + third_party/testsuite/br.wast:371:11: unable to join type void (type of last operation) with type i32 (function signature result type). + (module (func $type-arg-empty-vs-num (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/br.wast:348:18: type mismatch of br value. got i64, expected i32 - (block (br 0 (i64.const 1)) (i32.const 1)) - ^ + third_party/testsuite/br.wast:378:13: type stack size too small at br. got 0, expected at least 1 + (block (br 0 (nop))) + ^^ assert_invalid error: - third_party/testsuite/br.wast:354:36: label variable out of range (max 1) + third_party/testsuite/br.wast:377:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-arg-void-vs-empty + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:383:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-arg-num-vs-empty + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:399:13: type stack size too small at br. got 0, expected at least 1 + (block (br 0 (nop)) (i32.const 1)) + ^^ +assert_invalid error: + third_party/testsuite/br.wast:399:6: maximum arity for block is 1, got 2 + (block (br 0 (nop)) (i32.const 1)) + ^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:404:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). + (module (func $type-arg-num-vs-num (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:412:48: type stack size too small at i64.add. got 1, expected at least 2 + (block (i64.const 1) (i64.const 2) br 2 0) i64.add + ^^^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:418:60: type stack size too small at i32.add. got 1, expected at least 2 + (block (nop) (i32.const 7) (nop) (i32.const 8) br 2 0) i32.add + ^^^^^^^ +assert_invalid error: + third_party/testsuite/br.wast:424:36: label variable out of range (max 1) (module (func $unbound-label (br 1))) ^ assert_invalid error: - third_party/testsuite/br.wast:358:57: label variable out of range (max 3) + third_party/testsuite/br.wast:428:57: label variable out of range (max 3) (module (func $unbound-nested-label (block (block (br 5))))) ^ assert_invalid error: - third_party/testsuite/br.wast:362:34: label variable out of range (max 1) + third_party/testsuite/br.wast:432:34: label variable out of range (max 1) (module (func $large-label (br 0x100000001))) ^^^^^^^^^^^ 64/64 tests passed. diff --git a/test/spec/br_table.txt b/test/spec/br_table.txt index d8529709..480565f3 100644 --- a/test/spec/br_table.txt +++ b/test/spec/br_table.txt @@ -2,59 +2,95 @@ ;;; STDIN_FILE: third_party/testsuite/br_table.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/br_table.wast:1261:12: type mismatch of br_table default target. got void, expected i32 - (block (br_table 0 (i32.const 1)) (i32.const 1)) - ^ + third_party/testsuite/br_table.wast:1288:11: unable to join type void (type of last operation) with type i32 (function signature result type). + (module (func $type-arg-empty-vs-num (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1267:28: type mismatch of br_table target. got i64, expected i32 - (block (br_table 0 0 0 (i64.const 1) (i32.const 1)) (i32.const 1)) - ^ + third_party/testsuite/br_table.wast:1295:13: type stack size too small at br_table. got 1, expected at least 2 + (block (br_table 0 (nop) (i32.const 1))) + ^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1267:28: type mismatch of br_table target. got i64, expected i32 - (block (br_table 0 0 0 (i64.const 1) (i32.const 1)) (i32.const 1)) - ^ + third_party/testsuite/br_table.wast:1294:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-arg-void-vs-empty + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1267:28: type mismatch of br_table default target. got i64, expected i32 - (block (br_table 0 0 0 (i64.const 1) (i32.const 1)) (i32.const 1)) - ^ + third_party/testsuite/br_table.wast:1300:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-arg-num-vs-empty + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1274:28: type mismatch in nop. got void, expected i32 + third_party/testsuite/br_table.wast:1316:13: type stack size too small at br_table. got 1, expected at least 2 + (block (br_table 0 (nop) (i32.const 1)) (i32.const 1)) + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1316:6: maximum arity for block is 1, got 2 + (block (br_table 0 (nop) (i32.const 1)) (i32.const 1)) + ^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1321:11: unable to join type i64 (type of last operation) with type i32 (function signature result type). + (module (func $type-arg-num-vs-num (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1329:13: type stack size too small at br_table. got 0, expected at least 1 (block (br_table 0 0 0 (nop))) - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1280:24: type mismatch of key. got i64, expected i32 + third_party/testsuite/br_table.wast:1329:6: unable to join type void (joined type of block's br* targets) with type i32 (block's result type). + (block (br_table 0 0 0 (nop))) + ^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1335:13: type mismatch at br_table. got i64, expected i32 (block (br_table 0 (i64.const 0))) - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1286:40: type mismatch in nop. got void, expected i32 + third_party/testsuite/br_table.wast:1341:13: type stack size too small at br_table. got 1, expected at least 2 (block (br_table 0 0 (i32.const 0) (nop)) (i32.const 1)) - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1292:40: type mismatch of key. got i64, expected i32 + third_party/testsuite/br_table.wast:1341:6: maximum arity for block is 1, got 2 + (block (br_table 0 0 (i32.const 0) (nop)) (i32.const 1)) + ^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1347:13: type mismatch at br_table. got i64, expected i32 (block (br_table 0 0 (i32.const 0) (i64.const 0)) (i32.const 1)) - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1354:54: type mismatch at br_table. got i64, expected i32 + (block (i64.const 1) (i64.const 2) (i64.const 3) br_table 2 0 0) + ^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1355:5: type stack size too small at i64.add. got 1, expected at least 2 + i64.add + ^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1361:66: type mismatch at br_table. got i64, expected i32 + (block (nop) (i32.const 7) (nop) (i32.const 8) (i64.const 3) br_table 2 0) + ^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/br_table.wast:1362:5: type stack size too small at i32.add. got 1, expected at least 2 + i32.add + ^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1299:22: label variable out of range (max 2) + third_party/testsuite/br_table.wast:1369:22: label variable out of range (max 2) (block (br_table 2 1 (i32.const 1))) ^ assert_invalid error: - third_party/testsuite/br_table.wast:1305:31: label variable out of range (max 3) + third_party/testsuite/br_table.wast:1375:31: label variable out of range (max 3) (block (block (br_table 0 5 (i32.const 1)))) ^ assert_invalid error: - third_party/testsuite/br_table.wast:1311:24: label variable out of range (max 2) + third_party/testsuite/br_table.wast:1381:24: label variable out of range (max 2) (block (br_table 0 0x100000001 0 (i32.const 1))) ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/br_table.wast:1318:24: label variable out of range (max 2) + third_party/testsuite/br_table.wast:1388:24: label variable out of range (max 2) (block (br_table 1 2 (i32.const 1))) ^ assert_invalid error: - third_party/testsuite/br_table.wast:1324:31: label variable out of range (max 3) + third_party/testsuite/br_table.wast:1394:31: label variable out of range (max 3) (block (block (br_table 0 5 (i32.const 1)))) ^ assert_invalid error: - third_party/testsuite/br_table.wast:1330:26: label variable out of range (max 2) + third_party/testsuite/br_table.wast:1400:26: label variable out of range (max 2) (block (br_table 0 0 0x100000001 (i32.const 1))) ^^^^^^^^^^^ 146/146 tests passed. diff --git a/test/spec/break-drop.txt b/test/spec/break-drop.txt index 1fa4eda3..be1d8855 100644 --- a/test/spec/break-drop.txt +++ b/test/spec/break-drop.txt @@ -6,24 +6,24 @@ assert_invalid error: (module (func (block (br 0 (nop))))) ^^ assert_invalid error: - third_party/testsuite/break-drop.wast:17:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/break-drop.wast:17:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func (block (br 0 (nop))))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/break-drop.wast:22:25: type stack size too small at br_if. got 1, expected at least 2 (module (func (block (br_if 0 (nop) (i32.const 0))))) ^^^^^ assert_invalid error: - third_party/testsuite/break-drop.wast:22:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/break-drop.wast:22:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func (block (br_if 0 (nop) (i32.const 0))))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/break-drop.wast:27:25: type stack size too small at br_table. got 1, expected at least 2 (module (func (block (br_table 0 (nop) (i32.const 0))))) ^^^^^^^^ assert_invalid error: - third_party/testsuite/break-drop.wast:27:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/break-drop.wast:27:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func (block (br_table 0 (nop) (i32.const 0))))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 3/3 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/call_indirect.txt b/test/spec/call_indirect.txt index 2fe301de..dcdce323 100644 --- a/test/spec/call_indirect.txt +++ b/test/spec/call_indirect.txt @@ -2,80 +2,92 @@ ;;; STDIN_FILE: third_party/testsuite/call_indirect.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/call_indirect.wast:201:38: type mismatch of call_indirect result. got void, expected i32 + third_party/testsuite/call_indirect.wast:231:22: found call_indirect operator, but no table + (func $no-table (call_indirect 0 (i32.const 0))) + ^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/call_indirect.wast:240:30: type stack size too small at i32.eqz. got 0, expected at least 1 + (func $type-void-vs-num (i32.eqz (call_indirect 0 (i32.const 0)))) + ^^^^^^^ +assert_invalid error: + third_party/testsuite/call_indirect.wast:240:5: unable to join type i32 (type of last operation) with type void (function signature result type). (func $type-void-vs-num (i32.eqz (call_indirect 0 (i32.const 0)))) - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/call_indirect.wast:248:29: type mismatch at i32.eqz. got i64, expected i32 + (func $type-num-vs-num (i32.eqz (call_indirect 0 (i32.const 0)))) + ^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:208:37: type mismatch of call_indirect result. got i64, expected i32 + third_party/testsuite/call_indirect.wast:248:5: unable to join type i32 (type of last operation) with type void (function signature result type). (func $type-num-vs-num (i32.eqz (call_indirect 0 (i32.const 0)))) - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:216:25: too few parameters to function in call_indirect. got 0, expected 1 + third_party/testsuite/call_indirect.wast:257:26: type stack size too small at call_indirect. got 0, expected at least 1 (func $arity-0-vs-1 (call_indirect 0 (i32.const 0))) - ^ + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:223:25: too few parameters to function in call_indirect. got 0, expected 2 + third_party/testsuite/call_indirect.wast:265:26: type stack size too small at call_indirect. got 0, expected at least 2 (func $arity-0-vs-2 (call_indirect 0 (i32.const 0))) - ^ + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:230:25: too many parameters to function in call_indirect. got 1, expected 0 - (func $arity-1-vs-0 (call_indirect 0 (i32.const 0) (i32.const 1))) - ^ + third_party/testsuite/call_indirect.wast:273:5: unable to join type i32 (type of last operation) with type void (function signature result type). + (func $arity-1-vs-0 (call_indirect 0 (i32.const 1) (i32.const 0))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:238:7: too many parameters to function in call_indirect. got 2, expected 0 - (call_indirect 0 (i32.const 0) (f64.const 2) (i32.const 1)) - ^ + third_party/testsuite/call_indirect.wast:281:5: maximum arity for function result is 1, got 2 + (func $arity-2-vs-0 + ^ assert_invalid error: - third_party/testsuite/call_indirect.wast:248:7: too many parameters to function in call_indirect. got 3, expected 2 - (call_indirect 0 (i32.const 0) (nop) (i32.const 1) (i32.const 2)) - ^ + third_party/testsuite/call_indirect.wast:281:5: unable to join type i32 (type of last operation) with type void (function signature result type). + (func $arity-2-vs-0 + ^ assert_invalid error: - third_party/testsuite/call_indirect.wast:257:7: too many parameters to function in call_indirect. got 3, expected 2 - (call_indirect 0 (i32.const 0) (i32.const 1) (nop) (i32.const 2)) - ^ + third_party/testsuite/call_indirect.wast:307:35: type stack size too small at call_indirect. got 0, expected at least 1 + (func $type-func-void-vs-i32 (call_indirect 0 (i32.const 1) (nop))) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:266:7: too many parameters to function in call_indirect. got 3, expected 2 - (call_indirect 0 (i32.const 0) (i32.const 1) (i32.const 2) (nop)) - ^ + third_party/testsuite/call_indirect.wast:315:34: type mismatch at call_indirect function index. got i64, expected i32 + (func $type-func-num-vs-i32 (call_indirect 0 (i32.const 0) (i64.const 1))) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:275:51: type mismatch in nop. got void, expected i32 - (func $type-func-void-vs-i32 (call_indirect 0 (nop) (i32.const 1))) - ^ + third_party/testsuite/call_indirect.wast:325:8: type stack size too small at call_indirect. got 1, expected at least 2 + (call_indirect 0 (nop) (i32.const 1) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:282:50: type mismatch of function index. got i64, expected i32 - (func $type-func-num-vs-i32 (call_indirect 0 (i64.const 1) (i32.const 0))) - ^ + third_party/testsuite/call_indirect.wast:335:8: type stack size too small at call_indirect. got 1, expected at least 2 + (call_indirect 0 (i32.const 1) (nop) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:291:38: type mismatch in nop. got void, expected i32 - (call_indirect 0 (i32.const 0) (nop) (i32.const 1)) - ^ + third_party/testsuite/call_indirect.wast:345:8: type mismatch for argument 0 of call_indirect. got f64, expected i32 + (call_indirect 0 (f64.const 1) (i32.const 1) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:300:52: type mismatch in nop. got void, expected i32 - (call_indirect 0 (i32.const 0) (i32.const 1) (nop)) - ^ + third_party/testsuite/call_indirect.wast:345:8: type mismatch for argument 1 of call_indirect. got i32, expected f64 + (call_indirect 0 (f64.const 1) (i32.const 1) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:309:38: type mismatch of argument 0 of call_indirect. got f64, expected i32 - (call_indirect 0 (i32.const 0) (f64.const 1) (i32.const 1)) - ^ + third_party/testsuite/call_indirect.wast:355:8: type mismatch for argument 0 of call_indirect. got i32, expected f64 + (call_indirect 0 (i32.const 1) (f64.const 1) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:309:52: type mismatch of argument 1 of call_indirect. got i32, expected f64 - (call_indirect 0 (i32.const 0) (f64.const 1) (i32.const 1)) - ^ + third_party/testsuite/call_indirect.wast:355:8: type mismatch for argument 1 of call_indirect. got f64, expected i32 + (call_indirect 0 (i32.const 1) (f64.const 1) (i32.const 0)) + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:318:38: type mismatch of argument 0 of call_indirect. got i32, expected f64 - (call_indirect 0 (i32.const 0) (i32.const 1) (f64.const 1)) - ^ + third_party/testsuite/call_indirect.wast:367:40: function type variable out of range (max 1) + (func $unbound-type (call_indirect 1 (i32.const 0))) + ^ assert_invalid error: - third_party/testsuite/call_indirect.wast:318:52: type mismatch of argument 1 of call_indirect. got f64, expected i32 - (call_indirect 0 (i32.const 0) (i32.const 1) (f64.const 1)) - ^ + third_party/testsuite/call_indirect.wast:367:5: unable to join type i32 (type of last operation) with type void (function signature result type). + (func $unbound-type (call_indirect 1 (i32.const 0))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:328:46: function type variable out of range (max 1) - (module (func $unbound-type (call_indirect 1 (i32.const 0)))) - ^ + third_party/testsuite/call_indirect.wast:374:38: function type variable out of range (max 1) + (func $large-type (call_indirect 10001232130000 (i32.const 0))) + ^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/call_indirect.wast:332:44: function type variable out of range (max 1) - (module (func $large-type (call_indirect 10001232130000 (i32.const 0)))) - ^^^^^^^^^^^^^^ -41/41 tests passed. + third_party/testsuite/call_indirect.wast:374:5: unable to join type i32 (type of last operation) with type void (function signature result type). + (func $large-type (call_indirect 10001232130000 (i32.const 0))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +48/48 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/get_local.txt b/test/spec/get_local.txt index 1e6cfd87..9eeb7436 100644 --- a/test/spec/get_local.txt +++ b/test/spec/get_local.txt @@ -2,45 +2,45 @@ ;;; STDIN_FILE: third_party/testsuite/get_local.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/get_local.wast:91:12: unable to join type i32 (type of last operation) with type i64 (function signature result type). + third_party/testsuite/get_local.wast:91:11: unable to join type i32 (type of last operation) with type i64 (function signature result type). (module (func $type-local-num-vs-num (result i64) (local i32) (get_local 0))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/get_local.wast:95:53: type mismatch at i32.eqz. got f32, expected i32 (module (func $type-local-num-vs-num (local f32) (i32.eqz (get_local 0)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/get_local.wast:95:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/get_local.wast:95:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-local-num-vs-num (local f32) (i32.eqz (get_local 0)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/get_local.wast:99:57: type mismatch at f64.neg. got i64, expected f64 (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (get_local 1)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/get_local.wast:99:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/get_local.wast:99:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (get_local 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/get_local.wast:107:12: unable to join type i32 (type of last operation) with type i64 (function signature result type). + third_party/testsuite/get_local.wast:107:11: unable to join type i32 (type of last operation) with type i64 (function signature result type). (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/get_local.wast:111:53: type mismatch at i32.eqz. got f32, expected i32 (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/get_local.wast:111:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/get_local.wast:111:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/get_local.wast:115:57: type mismatch at f64.neg. got i64, expected f64 (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/get_local.wast:115:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/get_local.wast:115:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/get_local.wast:123:59: local variable out of range (max 2) (module (func $unbound-local (local i32 i64) (get_local 3))) diff --git a/test/spec/if_label_scope.fail.txt b/test/spec/if_label_scope.fail.txt index a001e370..c4817464 100644 --- a/test/spec/if_label_scope.fail.txt +++ b/test/spec/if_label_scope.fail.txt @@ -6,8 +6,8 @@ Error running "wast2wasm": third_party/testsuite/if_label_scope.fail.wast:6:19: undefined label variable "$l" (else (br $l (i32.const 42))) ^^ -third_party/testsuite/if_label_scope.fail.wast:2:4: unable to join type i32 (type of last operation) with type void (function signature result type). +third_party/testsuite/if_label_scope.fail.wast:2:3: unable to join type i32 (type of last operation) with type void (function signature result type). (func - ^^^^ + ^ ;;; STDERR ;;) diff --git a/test/spec/return.txt b/test/spec/return.txt index 95addba0..3e9ba00c 100644 --- a/test/spec/return.txt +++ b/test/spec/return.txt @@ -2,12 +2,16 @@ ;;; STDIN_FILE: third_party/testsuite/return.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/return.wast:274:54: type mismatch of return. got void, expected f64 - (module (func $type-value-void-vs-num (result f64) (return))) - ^ + third_party/testsuite/return.wast:281:56: type stack size too small at return. got 0, expected at least 1 + (module (func $type-value-empty-vs-num (result f64) (return))) + ^^^^^^ assert_invalid error: - third_party/testsuite/return.wast:278:61: type mismatch of return. got i64, expected f64 + third_party/testsuite/return.wast:285:55: type stack size too small at return. got 0, expected at least 1 + (module (func $type-value-void-vs-num (result f64) (return (nop)))) + ^^^^^^ +assert_invalid error: + third_party/testsuite/return.wast:289:54: type mismatch at return. got i64, expected f64 (module (func $type-value-num-vs-num (result f64) (return (i64.const 1)))) - ^ + ^^^^^^ 60/60 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/select.txt b/test/spec/select.txt index c96e91b8..a85d1227 100644 --- a/test/spec/select.txt +++ b/test/spec/select.txt @@ -6,8 +6,8 @@ assert_invalid error: (module (func $arity-0 (select (nop) (nop) (i32.const 1)))) ^^^^^^ assert_invalid error: - third_party/testsuite/select.wast:62:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/select.wast:62:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $arity-0 (select (nop) (nop) (i32.const 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 28/28 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/set_local.txt b/test/spec/set_local.txt index b7471068..9458e3fe 100644 --- a/test/spec/set_local.txt +++ b/test/spec/set_local.txt @@ -2,25 +2,25 @@ ;;; STDIN_FILE: third_party/testsuite/set_local.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/set_local.wast:95:12: unable to join type void (type of last operation) with type i64 (function signature result type). + third_party/testsuite/set_local.wast:95:11: unable to join type void (type of last operation) with type i64 (function signature result type). (module (func $type-local-num-vs-num (result i64) (local i32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:102:6: type stack size too small at i32.eqz. got 0, expected at least 1 (i32.eqz (set_local 0 (f32.const 0))) ^^^^^^^ assert_invalid error: - third_party/testsuite/set_local.wast:101:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/set_local.wast:101:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-local-num-vs-num (local f32) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:108:6: type stack size too small at f64.neg. got 0, expected at least 1 (f64.neg (set_local 1 (i64.const 0))) ^^^^^^^ assert_invalid error: - third_party/testsuite/set_local.wast:107:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/set_local.wast:107:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-local-num-vs-num (local f64 i64) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:114:58: type stack size too small at set_local. got 0, expected at least 1 (module (func $type-local-arg-void-vs-num (local i32) (set_local 0 (nop)))) @@ -38,25 +38,25 @@ assert_invalid error: ...func $type-local-arg-num-vs-num (local f64 i64) (set_local 1 (f64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/set_local.wast:134:12: unable to join type i32 (type of last operation) with type i64 (function signature result type). + third_party/testsuite/set_local.wast:134:11: unable to join type i32 (type of last operation) with type i64 (function signature result type). (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:138:53: type mismatch at i32.eqz. got f32, expected i32 (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/set_local.wast:138:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/set_local.wast:138:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:142:57: type mismatch at f64.neg. got i64, expected f64 (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/set_local.wast:142:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/set_local.wast:142:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/set_local.wast:147:58: type stack size too small at set_local. got 0, expected at least 1 (module (func $type-param-arg-void-vs-num (param i32) (set_local 0 (nop)))) diff --git a/test/spec/start.txt b/test/spec/start.txt index cdd9cdd9..1a004d06 100644 --- a/test/spec/start.txt +++ b/test/spec/start.txt @@ -2,9 +2,9 @@ ;;; STDIN_FILE: third_party/testsuite/start.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/start.wast:2:39: function variable out of range (max 1) - (module (func (i32.const 1)) (start 1)) - ^ + third_party/testsuite/start.wast:2:25: function variable out of range (max 1) + (module (func) (start 1)) + ^ assert_invalid error: third_party/testsuite/start.wast:8:5: start function must not return anything (start $main) diff --git a/test/spec/store_retval.txt b/test/spec/store_retval.txt index 807c775f..f266ee47 100644 --- a/test/spec/store_retval.txt +++ b/test/spec/store_retval.txt @@ -2,56 +2,56 @@ ;;; STDIN_FILE: third_party/testsuite/store_retval.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/store_retval.wast:4:12: unable to join type void (type of last operation) with type i32 (function signature result type). + third_party/testsuite/store_retval.wast:4:11: unable to join type void (type of last operation) with type i32 (function signature result type). (module (func (param i32) (result i32) (set_local 0 (i32.const 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:8:12: unable to join type void (type of last operation) with type i64 (function signature result type). + third_party/testsuite/store_retval.wast:8:11: unable to join type void (type of last operation) with type i64 (function signature result type). (module (func (param i64) (result i64) (set_local 0 (i64.const 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:12:12: unable to join type void (type of last operation) with type f32 (function signature result type). + third_party/testsuite/store_retval.wast:12:11: unable to join type void (type of last operation) with type f32 (function signature result type). (module (func (param f32) (result f32) (set_local 0 (f32.const 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:16:12: unable to join type void (type of last operation) with type f64 (function signature result type). + third_party/testsuite/store_retval.wast:16:11: unable to join type void (type of last operation) with type f64 (function signature result type). (module (func (param f64) (result f64) (set_local 0 (f64.const 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:21:23: unable to join type void (type of last operation) with type i32 (function signature result type). - (module (memory 1) (func (param i32) (result i32) (i32.store (i32.const 0) ... - ^^^^ + third_party/testsuite/store_retval.wast:21:22: unable to join type void (type of last operation) with type i32 (function signature result type). +...y 1) (func (param i32) (result i32) (i32.store (i32.const 0) (i32.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:25:23: unable to join type void (type of last operation) with type i64 (function signature result type). - (module (memory 1) (func (param i64) (result i64) (i64.store (i32.const 0) ... - ^^^^ + third_party/testsuite/store_retval.wast:25:22: unable to join type void (type of last operation) with type i64 (function signature result type). +...y 1) (func (param i64) (result i64) (i64.store (i32.const 0) (i64.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:29:23: unable to join type void (type of last operation) with type f32 (function signature result type). - (module (memory 1) (func (param f32) (result f32) (f32.store (i32.const 0) ... - ^^^^ + third_party/testsuite/store_retval.wast:29:22: unable to join type void (type of last operation) with type f32 (function signature result type). +...y 1) (func (param f32) (result f32) (f32.store (i32.const 0) (f32.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:33:23: unable to join type void (type of last operation) with type f64 (function signature result type). - (module (memory 1) (func (param f64) (result f64) (f64.store (i32.const 0) ... - ^^^^ + third_party/testsuite/store_retval.wast:33:22: unable to join type void (type of last operation) with type f64 (function signature result type). +...y 1) (func (param f64) (result f64) (f64.store (i32.const 0) (f64.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:38:23: unable to join type void (type of last operation) with type i32 (function signature result type). - (module (memory 1) (func (param i32) (result i32) (i32.store8 (i32.const 0)... - ^^^^ + third_party/testsuite/store_retval.wast:38:22: unable to join type void (type of last operation) with type i32 (function signature result type). +... 1) (func (param i32) (result i32) (i32.store8 (i32.const 0) (i32.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:42:23: unable to join type void (type of last operation) with type i32 (function signature result type). - (module (memory 1) (func (param i32) (result i32) (i32.store16 (i32.const 0... - ^^^^ + third_party/testsuite/store_retval.wast:42:22: unable to join type void (type of last operation) with type i32 (function signature result type). +...1) (func (param i32) (result i32) (i32.store16 (i32.const 0) (i32.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:46:23: unable to join type void (type of last operation) with type i64 (function signature result type). - (module (memory 1) (func (param i64) (result i64) (i64.store8 (i32.const 0)... - ^^^^ + third_party/testsuite/store_retval.wast:46:22: unable to join type void (type of last operation) with type i64 (function signature result type). +... 1) (func (param i64) (result i64) (i64.store8 (i32.const 0) (i64.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:50:23: unable to join type void (type of last operation) with type i64 (function signature result type). - (module (memory 1) (func (param i64) (result i64) (i64.store16 (i32.const 0... - ^^^^ + third_party/testsuite/store_retval.wast:50:22: unable to join type void (type of last operation) with type i64 (function signature result type). +...1) (func (param i64) (result i64) (i64.store16 (i32.const 0) (i64.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/store_retval.wast:54:23: unable to join type void (type of last operation) with type i64 (function signature result type). - (module (memory 1) (func (param i64) (result i64) (i64.store32 (i32.const 0... - ^^^^ + third_party/testsuite/store_retval.wast:54:22: unable to join type void (type of last operation) with type i64 (function signature result type). +...1) (func (param i64) (result i64) (i64.store32 (i32.const 0) (i64.const 1)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0/0 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/tee_local.txt b/test/spec/tee_local.txt index 00bb04b9..a52288ee 100644 --- a/test/spec/tee_local.txt +++ b/test/spec/tee_local.txt @@ -2,109 +2,109 @@ ;;; STDIN_FILE: third_party/testsuite/tee_local.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/tee_local.wast:132:12: unable to join type i32 (type of last operation) with type i64 (function signature result type). + third_party/testsuite/tee_local.wast:132:11: unable to join type i32 (type of last operation) with type i64 (function signature result type). (module (func $type-local-num-vs-num (result i64) (local i32) (tee_local 0 ... - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:136:53: type mismatch at i32.eqz. got f32, expected i32 ...nc $type-local-num-vs-num (local f32) (i32.eqz (tee_local 0 (f32.const 0))))) ^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:136:12: unable to join type i32 (type of last operation) with type void (function signature result type). - (module (func $type-local-num-vs-num (local f32) (i32.eqz (tee_local 0 (f32... - ^^^^ + third_party/testsuite/tee_local.wast:136:11: unable to join type i32 (type of last operation) with type void (function signature result type). +...unc $type-local-num-vs-num (local f32) (i32.eqz (tee_local 0 (f32.const 0)... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:140:57: type mismatch at f64.neg. got i64, expected f64 ...type-local-num-vs-num (local f64 i64) (f64.neg (tee_local 1 (i64.const 0))))) ^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:140:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:140:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (tee_local 1 ... - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:145:58: type stack size too small at tee_local. got 0, expected at least 1 (module (func $type-local-arg-void-vs-num (local i32) (tee_local 0 (nop)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:145:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:145:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-local-arg-void-vs-num (local i32) (tee_local 0 (nop)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:149:57: type mismatch at tee_local. got f32, expected i32 ...le (func $type-local-arg-num-vs-num (local i32) (tee_local 0 (f32.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:149:12: unable to join type i32 (type of last operation) with type void (function signature result type). - (module (func $type-local-arg-num-vs-num (local i32) (tee_local 0 (f32.cons... - ^^^^ + third_party/testsuite/tee_local.wast:149:11: unable to join type i32 (type of last operation) with type void (function signature result type). +...le (func $type-local-arg-num-vs-num (local i32) (tee_local 0 (f32.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:153:57: type mismatch at tee_local. got f64, expected f32 ...le (func $type-local-arg-num-vs-num (local f32) (tee_local 0 (f64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:153:12: unable to join type f32 (type of last operation) with type void (function signature result type). - (module (func $type-local-arg-num-vs-num (local f32) (tee_local 0 (f64.cons... - ^^^^ + third_party/testsuite/tee_local.wast:153:11: unable to join type f32 (type of last operation) with type void (function signature result type). +...le (func $type-local-arg-num-vs-num (local f32) (tee_local 0 (f64.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:157:61: type mismatch at tee_local. got f64, expected i64 ...func $type-local-arg-num-vs-num (local f64 i64) (tee_local 1 (f64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:157:12: unable to join type i64 (type of last operation) with type void (function signature result type). - (module (func $type-local-arg-num-vs-num (local f64 i64) (tee_local 1 (f64.... - ^^^^ + third_party/testsuite/tee_local.wast:157:11: unable to join type i64 (type of last operation) with type void (function signature result type). +...func $type-local-arg-num-vs-num (local f64 i64) (tee_local 1 (f64.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:165:12: unable to join type i32 (type of last operation) with type i64 (function signature result type). + third_party/testsuite/tee_local.wast:165:11: unable to join type i32 (type of last operation) with type i64 (function signature result type). (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:169:53: type mismatch at i32.eqz. got f32, expected i32 (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:169:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:169:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:173:57: type mismatch at f64.neg. got i64, expected f64 (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) ^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:173:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:173:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:178:58: type stack size too small at tee_local. got 0, expected at least 1 (module (func $type-param-arg-void-vs-num (param i32) (tee_local 0 (nop)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:178:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:178:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-param-arg-void-vs-num (param i32) (tee_local 0 (nop)))) - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:182:57: type mismatch at tee_local. got f32, expected i32 ...le (func $type-param-arg-num-vs-num (param i32) (tee_local 0 (f32.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:182:12: unable to join type i32 (type of last operation) with type void (function signature result type). - (module (func $type-param-arg-num-vs-num (param i32) (tee_local 0 (f32.cons... - ^^^^ + third_party/testsuite/tee_local.wast:182:11: unable to join type i32 (type of last operation) with type void (function signature result type). +...le (func $type-param-arg-num-vs-num (param i32) (tee_local 0 (f32.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:186:57: type mismatch at tee_local. got f64, expected f32 ...le (func $type-param-arg-num-vs-num (param f32) (tee_local 0 (f64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:186:12: unable to join type f32 (type of last operation) with type void (function signature result type). - (module (func $type-param-arg-num-vs-num (param f32) (tee_local 0 (f64.cons... - ^^^^ + third_party/testsuite/tee_local.wast:186:11: unable to join type f32 (type of last operation) with type void (function signature result type). +...le (func $type-param-arg-num-vs-num (param f32) (tee_local 0 (f64.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:190:61: type mismatch at tee_local. got f64, expected i64 ...func $type-param-arg-num-vs-num (param f64 i64) (tee_local 1 (f64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:190:12: unable to join type i64 (type of last operation) with type void (function signature result type). - (module (func $type-param-arg-num-vs-num (param f64 i64) (tee_local 1 (f64.... - ^^^^ + third_party/testsuite/tee_local.wast:190:11: unable to join type i64 (type of last operation) with type void (function signature result type). +...func $type-param-arg-num-vs-num (param f64 i64) (tee_local 1 (f64.const 0)))) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:198:59: local variable out of range (max 2) (module (func $unbound-local (local i32 i64) (get_local 3))) @@ -134,24 +134,24 @@ assert_invalid error: ...pe-mixed-arg-num-vs-num (param f32) (local i32) (tee_local 1 (f32.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:225:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:225:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-mixed-arg-num-vs-num (param f32) (local i32) (tee_local... - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:229:73: type mismatch at tee_local. got f32, expected i32 ...ixed-arg-num-vs-num (param i64 i32) (local f32) (tee_local 1 (f32.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:229:12: unable to join type i32 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:229:11: unable to join type i32 (type of last operation) with type void (function signature result type). (module (func $type-mixed-arg-num-vs-num (param i64 i32) (local f32) (tee_l... - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: third_party/testsuite/tee_local.wast:233:73: type mismatch at tee_local. got i64, expected f64 ...ixed-arg-num-vs-num (param i64) (local f64 i64) (tee_local 1 (i64.const 0)))) ^^^^^^^^^ assert_invalid error: - third_party/testsuite/tee_local.wast:233:12: unable to join type f64 (type of last operation) with type void (function signature result type). + third_party/testsuite/tee_local.wast:233:11: unable to join type f64 (type of last operation) with type void (function signature result type). (module (func $type-mixed-arg-num-vs-num (param i64) (local f64 i64) (tee_l... - ^^^^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 11/11 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/typecheck.txt b/test/spec/typecheck.txt index 8bef81ba..71724491 100644 --- a/test/spec/typecheck.txt +++ b/test/spec/typecheck.txt @@ -2,972 +2,1796 @@ ;;; STDIN_FILE: third_party/testsuite/typecheck.wast (;; STDOUT ;;; assert_invalid error: - third_party/testsuite/typecheck.wast:5:35: type mismatch of condition. got f32, expected i32 + third_party/testsuite/typecheck.wast:8:5: type stack size too small at i32.eqz. got 0, expected at least 1 + i32.eqz drop + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:15:11: type stack size too small at i32.eqz. got 0, expected at least 1 + block i32.eqz drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:13:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-unary-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:22:9: type stack size too small at i32.eqz. got 0, expected at least 1 + loop i32.eqz drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:20:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-unary-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:29:8: type stack size too small at i32.eqz. got 0, expected at least 1 + if i32.eqz drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:27:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-unary-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:36:27: type stack size too small at i32.eqz. got 0, expected at least 1 + if (i32.const 0) else i32.eqz end drop + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:34:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-unary-operand-missing-in-else + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:43:5: type stack size too small at i32.add. got 0, expected at least 2 + i32.add drop + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:49:19: type stack size too small at i32.add. got 1, expected at least 2 + (i32.const 0) i32.add drop + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:56:11: type stack size too small at i32.add. got 0, expected at least 2 + block i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:54:11: maximum arity for function result is 1, got 2 + (module (func $type-binary-1st-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:54:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-1st-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:63:25: type stack size too small at i32.add. got 1, expected at least 2 + block (i32.const 0) i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:61:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-2nd-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:70:10: type stack size too small at i32.add. got 0, expected at least 2 + loop i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:68:11: maximum arity for function result is 1, got 2 + (module (func $type-binary-1st-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:68:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-1st-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:77:24: type stack size too small at i32.add. got 1, expected at least 2 + loop (i32.const 0) i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:75:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-2nd-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:84:8: type stack size too small at i32.add. got 0, expected at least 2 + if i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:82:11: maximum arity for function result is 1, got 2 + (module (func $type-binary-1st-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:82:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-1st-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:91:22: type stack size too small at i32.add. got 1, expected at least 2 + if (i32.const 0) i32.add drop end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:89:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-2nd-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:98:5: maximum arity for if true branch is 1, got 2 + if (i32.const 0) (i32.const 0) else i32.add (i32.const 0) end + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:98:41: type stack size too small at i32.add. got 0, expected at least 2 + if (i32.const 0) (i32.const 0) else i32.add (i32.const 0) end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:98:5: maximum arity for if false branch is 1, got 2 + if (i32.const 0) (i32.const 0) else i32.add (i32.const 0) end + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:96:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-1st-operand-missing-in-else + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:106:5: maximum arity for if true branch is 1, got 2 + if (i32.const 0) (i32.const 0) else i32.add end + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:106:41: type stack size too small at i32.add. got 0, expected at least 2 + if (i32.const 0) (i32.const 0) else i32.add end + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:104:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-binary-2nd-operand-missing-in-else + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:114:5: type stack size too small at if condition. got 0, expected at least 1 + if end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:113:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-if-operand-missing + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:121:11: type stack size too small at if condition. got 0, expected at least 1 + block if end end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:119:11: maximum arity for function result is 1, got 2 + (module (func $type-if-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:119:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-if-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:128:10: type stack size too small at if condition. got 0, expected at least 1 + loop if end end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:126:11: maximum arity for function result is 1, got 2 + (module (func $type-if-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:126:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-if-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:135:8: type stack size too small at if condition. got 0, expected at least 1 + if if end end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:135:5: unable to join type i32 (if true branch type) with type void (if false branch type). + if if end end + ^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:133:11: maximum arity for function result is 1, got 2 + (module (func $type-if-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:133:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-if-operand-missing-in-if + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:142:27: type stack size too small at if condition. got 0, expected at least 1 + if (i32.const 0) else if end (i32.const 0) end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:142:5: maximum arity for if false branch is 1, got 2 + if (i32.const 0) else if end (i32.const 0) end + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:140:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-if-operand-missing-in-else + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:150:11: type stack size too small at br. got 0, expected at least 1 + block br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:158:11: type stack size too small at br. got 0, expected at least 1 + block br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:156:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-br-operand-missing-in-block + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:166:10: type mismatch at br value. got i32, expected void + loop br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:166:10: type stack size too small at br. got 0, expected at least 1 + loop br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:164:11: unable to join type i32 (type of last operation) with type void (function signature result type). + (module (func $type-br-operand-missing-in-loop + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:175:10: type stack size too small at br. got 0, expected at least 1 + if br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:175:7: unable to join type i32 (if true branch type) with type void (if false branch type). + if br 1 0 end + ^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:173:5: maximum arity for block is 1, got 2 + block + ^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:185:29: type stack size too small at br. got 0, expected at least 1 + if (i32.const 0) else br 1 0 end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:183:5: maximum arity for block is 1, got 2 + block + ^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:194:5: type stack size too small at return. got 0, expected at least 1 + return + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:201:11: type stack size too small at return. got 0, expected at least 1 + block return end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:199:11: maximum arity for function result is 1, got 2 + (module (func $type-return-operand-missing-in-block (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:208:10: type stack size too small at return. got 0, expected at least 1 + loop return end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:206:11: maximum arity for function result is 1, got 2 + (module (func $type-return-operand-missing-in-loop (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:215:8: type stack size too small at return. got 0, expected at least 1 + if return end + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:215:5: unable to join type i32 (if true branch type) with type void (if false branch type). + if return end + ^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:213:11: maximum arity for function result is 1, got 2 + (module (func $type-return-operand-missing-in-if (result i32) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:222:27: type stack size too small at return. got 0, expected at least 1 + if (i32.const 0) else return end drop + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:230:32: type mismatch at if condition. got f32, expected i32 (assert_invalid (module (func (if (f32.const 0) (nop) (nop)))) "type mismatch") - ^ + ^^ assert_invalid error: - third_party/testsuite/typecheck.wast:8:47: type mismatch of br_if condition. got f32, expected i32 + third_party/testsuite/typecheck.wast:233:39: type mismatch at br_if. got f32, expected i32 (assert_invalid (module (func (block (br_if 0 (f32.const 0))))) "type mismatch") - ^ + ^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:12:36: type mismatch of key. got f32, expected i32 + third_party/testsuite/typecheck.wast:237:25: type mismatch at br_table. got f32, expected i32 (module (func (block (br_table 0 (f32.const 0))))) - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:16:58: type mismatch of argument 0 of call. got f32, expected i32 + third_party/testsuite/typecheck.wast:241:51: type mismatch for argument 0 of call. got f32, expected i32 ...id (module (func (param i32)) (func (call 0 (f32.const 0)))) "type mismatch") - ^ + ^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:17:75: type mismatch of argument 0 of call_import. got f32, expected i32 -...t "a" "b" (param i32)) (func (call_import 0 (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:242:61: type mismatch for argument 0 of call_import. got f32, expected i32 +...ort "a" "b" (param i32)) (func (call_import 0 (f32.const 0)))) "type misma... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:24:38: type mismatch of argument 0 of call_indirect. got f32, expected i32 + third_party/testsuite/typecheck.wast:249:8: type mismatch at call_indirect function index. got f32, expected i32 (call_indirect 0 (i32.const 0) (f32.const 0)))) - ^ + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:33:28: type mismatch of function index. got f32, expected i32 + third_party/testsuite/typecheck.wast:258:12: type mismatch at call_indirect function index. got f32, expected i32 (func (call_indirect 0 (f32.const 0)))) - ^ + ^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:37:52: type mismatch of return. got f32, expected i32 + third_party/testsuite/typecheck.wast:262:45: type mismatch at return. got f32, expected i32 ..._invalid (module (func (result i32) (return (f32.const 0)))) "type mismatch") - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:40:56: type mismatch of set_local. got f32, expected i32 -...alid (module (func (local i32) (set_local 0 (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:265:44: type mismatch at set_local. got f32, expected i32 +...valid (module (func (local i32) (set_local 0 (f32.const 0)))) "type mismat... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:268:43: type mismatch at i32.load. got f32, expected i32 +..._invalid (module (memory 1) (func (i32.load (f32.const 0)))) "type mismatch") + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:43:52: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:268:36: unable to join type i32 (type of last operation) with type void (function signature result type). ..._invalid (module (memory 1) (func (i32.load (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:44:55: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:269:43: type mismatch at i32.load8_s. got f32, expected i32 ...valid (module (memory 1) (func (i32.load8_s (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:45:55: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:269:36: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (memory 1) (func (i32.load8_s (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:270:43: type mismatch at i32.load8_u. got f32, expected i32 ...valid (module (memory 1) (func (i32.load8_u (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:46:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:270:36: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (memory 1) (func (i32.load8_u (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:271:43: type mismatch at i32.load16_s. got f32, expected i32 ...alid (module (memory 1) (func (i32.load16_s (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:47:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:271:36: unable to join type i32 (type of last operation) with type void (function signature result type). +...alid (module (memory 1) (func (i32.load16_s (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:272:43: type mismatch at i32.load16_u. got f32, expected i32 +...alid (module (memory 1) (func (i32.load16_u (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:272:36: unable to join type i32 (type of last operation) with type void (function signature result type). ...alid (module (memory 1) (func (i32.load16_u (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:273:43: type mismatch at i64.load. got f32, expected i32 +..._invalid (module (memory 1) (func (i64.load (f32.const 0)))) "type mismatch") + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:48:52: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:273:36: unable to join type i64 (type of last operation) with type void (function signature result type). ..._invalid (module (memory 1) (func (i64.load (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:274:43: type mismatch at i64.load8_s. got f32, expected i32 +...valid (module (memory 1) (func (i64.load8_s (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:49:55: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:274:36: unable to join type i64 (type of last operation) with type void (function signature result type). ...valid (module (memory 1) (func (i64.load8_s (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:275:43: type mismatch at i64.load8_u. got f32, expected i32 +...valid (module (memory 1) (func (i64.load8_u (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:50:55: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:275:36: unable to join type i64 (type of last operation) with type void (function signature result type). ...valid (module (memory 1) (func (i64.load8_u (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:51:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:276:43: type mismatch at i64.load16_s. got f32, expected i32 ...alid (module (memory 1) (func (i64.load16_s (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:52:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:276:36: unable to join type i64 (type of last operation) with type void (function signature result type). +...alid (module (memory 1) (func (i64.load16_s (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:277:43: type mismatch at i64.load16_u. got f32, expected i32 ...alid (module (memory 1) (func (i64.load16_u (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:277:36: unable to join type i64 (type of last operation) with type void (function signature result type). +...alid (module (memory 1) (func (i64.load16_u (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:278:43: type mismatch at i64.load32_s. got f32, expected i32 +...alid (module (memory 1) (func (i64.load32_s (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:53:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:278:36: unable to join type i64 (type of last operation) with type void (function signature result type). ...alid (module (memory 1) (func (i64.load32_s (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:279:43: type mismatch at i64.load32_u. got f32, expected i32 +...alid (module (memory 1) (func (i64.load32_u (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:54:56: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:279:36: unable to join type i64 (type of last operation) with type void (function signature result type). ...alid (module (memory 1) (func (i64.load32_u (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:280:43: type mismatch at f32.load. got f32, expected i32 +..._invalid (module (memory 1) (func (f32.load (f32.const 0)))) "type mismatch") + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:55:52: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:280:36: unable to join type f32 (type of last operation) with type void (function signature result type). ..._invalid (module (memory 1) (func (f32.load (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:56:52: type mismatch of load index. got f32, expected i32 + third_party/testsuite/typecheck.wast:281:43: type mismatch at f64.load. got f32, expected i32 ..._invalid (module (memory 1) (func (f64.load (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:59:53: type mismatch of store index. got f32, expected i32 -... (module (memory 1) (func (i32.store (f32.const 0) (i32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:281:36: unable to join type f64 (type of last operation) with type void (function signature result type). +..._invalid (module (memory 1) (func (f64.load (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:284:43: type mismatch at i32.store. got f32, expected i32 +...nvalid (module (memory 1) (func (i32.store (f32.const 0) (i32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:60:54: type mismatch of store index. got f32, expected i32 -...(module (memory 1) (func (i32.store8 (f32.const 0) (i32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:285:43: type mismatch at i32.store8. got f32, expected i32 +...valid (module (memory 1) (func (i32.store8 (f32.const 0) (i32.const 0)))) ... + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:61:55: type mismatch of store index. got f32, expected i32 -...module (memory 1) (func (i32.store16 (f32.const 0) (i32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:286:43: type mismatch at i32.store16. got f32, expected i32 +...valid (module (memory 1) (func (i32.store16 (f32.const 0) (i32.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:62:53: type mismatch of store index. got f32, expected i32 -... (module (memory 1) (func (i64.store (f32.const 0) (i32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:287:43: type mismatch at i64.store. got f32, expected i32 +...nvalid (module (memory 1) (func (i64.store (f32.const 0) (i32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:62:67: type mismatch of store value. got i32, expected i64 -...e (memory 1) (func (i64.store (f32.const 0) (i32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:287:43: type mismatch at i64.store. got i32, expected i64 +...nvalid (module (memory 1) (func (i64.store (f32.const 0) (i32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:63:54: type mismatch of store index. got f32, expected i32 -...(module (memory 1) (func (i64.store8 (f32.const 0) (i64.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:288:43: type mismatch at i64.store8. got f32, expected i32 +...valid (module (memory 1) (func (i64.store8 (f32.const 0) (i64.const 0)))) ... + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:64:55: type mismatch of store index. got f32, expected i32 -...module (memory 1) (func (i64.store16 (f32.const 0) (i64.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:289:43: type mismatch at i64.store16. got f32, expected i32 +...valid (module (memory 1) (func (i64.store16 (f32.const 0) (i64.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:65:55: type mismatch of store index. got f32, expected i32 -...module (memory 1) (func (i64.store32 (f32.const 0) (i64.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:290:43: type mismatch at i64.store32. got f32, expected i32 +...valid (module (memory 1) (func (i64.store32 (f32.const 0) (i64.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:66:53: type mismatch of store index. got f32, expected i32 -... (module (memory 1) (func (f32.store (f32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:291:43: type mismatch at f32.store. got f32, expected i32 +...nvalid (module (memory 1) (func (f32.store (f32.const 0) (f32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:67:53: type mismatch of store index. got f32, expected i32 -... (module (memory 1) (func (f64.store (f32.const 0) (f64.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:292:43: type mismatch at f64.store. got f32, expected i32 +...nvalid (module (memory 1) (func (f64.store (f32.const 0) (f64.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:70:67: type mismatch of store value. got f32, expected i32 -...e (memory 1) (func (i32.store (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:295:43: type mismatch at i32.store. got f32, expected i32 +...nvalid (module (memory 1) (func (i32.store (i32.const 0) (f32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:71:68: type mismatch of store value. got f32, expected i32 -... (memory 1) (func (i32.store8 (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:296:43: type mismatch at i32.store8. got f32, expected i32 +...valid (module (memory 1) (func (i32.store8 (i32.const 0) (f32.const 0)))) ... + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:72:69: type mismatch of store value. got f32, expected i32 -...(memory 1) (func (i32.store16 (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:297:43: type mismatch at i32.store16. got f32, expected i32 +...valid (module (memory 1) (func (i32.store16 (i32.const 0) (f32.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:73:67: type mismatch of store value. got f32, expected i64 -...e (memory 1) (func (i64.store (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:298:43: type mismatch at i64.store. got f32, expected i64 +...nvalid (module (memory 1) (func (i64.store (i32.const 0) (f32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:74:68: type mismatch of store value. got f64, expected i64 -... (memory 1) (func (i64.store8 (i32.const 0) (f64.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:299:43: type mismatch at i64.store8. got f64, expected i64 +...valid (module (memory 1) (func (i64.store8 (i32.const 0) (f64.const 0)))) ... + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:75:69: type mismatch of store value. got f64, expected i64 -...(memory 1) (func (i64.store16 (i32.const 0) (f64.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:300:43: type mismatch at i64.store16. got f64, expected i64 +...valid (module (memory 1) (func (i64.store16 (i32.const 0) (f64.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:76:69: type mismatch of store value. got f64, expected i64 -...(memory 1) (func (i64.store32 (i32.const 0) (f64.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:301:43: type mismatch at i64.store32. got f64, expected i64 +...valid (module (memory 1) (func (i64.store32 (i32.const 0) (f64.const 0))))... + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:77:67: type mismatch of store value. got i32, expected f32 -...e (memory 1) (func (f32.store (i32.const 0) (i32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:302:43: type mismatch at f32.store. got i32, expected f32 +...nvalid (module (memory 1) (func (f32.store (i32.const 0) (i32.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:78:67: type mismatch of store value. got i64, expected f64 -...e (memory 1) (func (f64.store (i32.const 0) (i64.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:303:43: type mismatch at f64.store. got i64, expected f64 +...nvalid (module (memory 1) (func (f64.store (i32.const 0) (i64.const 0)))) ... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:81:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:306:32: type mismatch at i32.add. got i64, expected i32 (assert_invalid (module (func (i32.add (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:81:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:306:32: type mismatch at i32.add. got f32, expected i32 +(assert_invalid (module (func (i32.add (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:306:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.add (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:307:32: type mismatch at i32.and. got i64, expected i32 +(assert_invalid (module (func (i32.and (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:82:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:307:32: type mismatch at i32.and. got f32, expected i32 (assert_invalid (module (func (i32.and (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:82:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:307:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.and (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:308:32: type mismatch at i32.div_s. got i64, expected i32 +(assert_invalid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:308:32: type mismatch at i32.div_s. got f32, expected i32 +(assert_invalid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:83:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:308:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:83:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:309:32: type mismatch at i32.div_u. got i64, expected i32 +(assert_invalid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:84:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:309:32: type mismatch at i32.div_u. got f32, expected i32 +(assert_invalid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:84:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:309:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:310:32: type mismatch at i32.mul. got i64, expected i32 +(assert_invalid (module (func (i32.mul (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:85:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:310:32: type mismatch at i32.mul. got f32, expected i32 (assert_invalid (module (func (i32.mul (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:85:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:310:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.mul (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:86:39: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:311:32: type mismatch at i32.or. got i64, expected i32 (assert_invalid (module (func (i32.or (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:86:53: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:311:32: type mismatch at i32.or. got f32, expected i32 +(assert_invalid (module (func (i32.or (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:311:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (i32.or (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:312:32: type mismatch at i32.rem_s. got i64, expected i32 +(assert_invalid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:312:32: type mismatch at i32.rem_s. got f32, expected i32 +(assert_invalid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:312:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:87:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:313:32: type mismatch at i32.rem_u. got i64, expected i32 +(assert_invalid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:87:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:313:32: type mismatch at i32.rem_u. got f32, expected i32 +(assert_invalid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:88:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:313:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:88:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:314:32: type mismatch at i32.rotl. got i64, expected i32 +(assert_invalid (module (func (i32.rotl (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:89:41: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:314:32: type mismatch at i32.rotl. got f32, expected i32 (assert_invalid (module (func (i32.rotl (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:314:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.rotl (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:89:55: type mismatch of argument 1 of binary op. got f32, expected i32 -...valid (module (func (i32.rotl (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:315:32: type mismatch at i32.rotr. got i64, expected i32 +(assert_invalid (module (func (i32.rotr (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:90:41: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:315:32: type mismatch at i32.rotr. got f32, expected i32 (assert_invalid (module (func (i32.rotr (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:90:55: type mismatch of argument 1 of binary op. got f32, expected i32 -...valid (module (func (i32.rotr (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:315:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.rotr (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:316:32: type mismatch at i32.shl. got i64, expected i32 +(assert_invalid (module (func (i32.shl (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:91:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:316:32: type mismatch at i32.shl. got f32, expected i32 (assert_invalid (module (func (i32.shl (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:91:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:316:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.shl (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:92:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:317:32: type mismatch at i32.shr_s. got i64, expected i32 +(assert_invalid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:92:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:317:32: type mismatch at i32.shr_s. got f32, expected i32 +(assert_invalid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:93:42: type mismatch of argument 0 of binary op. got i64, expected i32 -...ert_invalid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:317:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:93:56: type mismatch of argument 1 of binary op. got f32, expected i32 -...alid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:318:32: type mismatch at i32.shr_u. got i64, expected i32 +(assert_invalid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:94:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:318:32: type mismatch at i32.shr_u. got f32, expected i32 +(assert_invalid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:318:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...valid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:319:32: type mismatch at i32.sub. got i64, expected i32 (assert_invalid (module (func (i32.sub (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:94:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:319:32: type mismatch at i32.sub. got f32, expected i32 +(assert_invalid (module (func (i32.sub (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:319:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.sub (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:95:40: type mismatch of argument 0 of binary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:320:32: type mismatch at i32.xor. got i64, expected i32 (assert_invalid (module (func (i32.xor (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:95:54: type mismatch of argument 1 of binary op. got f32, expected i32 + third_party/testsuite/typecheck.wast:320:32: type mismatch at i32.xor. got f32, expected i32 +(assert_invalid (module (func (i32.xor (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:320:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i32.xor (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:321:32: type mismatch at i64.add. got i32, expected i64 +(assert_invalid (module (func (i64.add (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:96:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:321:32: type mismatch at i64.add. got f32, expected i64 (assert_invalid (module (func (i64.add (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:96:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:321:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.add (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:322:32: type mismatch at i64.and. got i32, expected i64 +(assert_invalid (module (func (i64.and (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:97:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:322:32: type mismatch at i64.and. got f32, expected i64 (assert_invalid (module (func (i64.and (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:97:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:322:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.and (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:98:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:323:32: type mismatch at i64.div_s. got i32, expected i64 +(assert_invalid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:98:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:323:32: type mismatch at i64.div_s. got f32, expected i64 +(assert_invalid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:99:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:323:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:99:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:324:32: type mismatch at i64.div_u. got i32, expected i64 +(assert_invalid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:100:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:324:32: type mismatch at i64.div_u. got f32, expected i64 +(assert_invalid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:324:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:325:32: type mismatch at i64.mul. got i32, expected i64 (assert_invalid (module (func (i64.mul (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:100:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:325:32: type mismatch at i64.mul. got f32, expected i64 +(assert_invalid (module (func (i64.mul (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:325:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.mul (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:326:32: type mismatch at i64.or. got i32, expected i64 +(assert_invalid (module (func (i64.or (i32.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:101:39: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:326:32: type mismatch at i64.or. got f32, expected i64 (assert_invalid (module (func (i64.or (i32.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:101:53: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:326:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...invalid (module (func (i64.or (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:327:32: type mismatch at i64.rem_s. got i32, expected i64 +(assert_invalid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:327:32: type mismatch at i64.rem_s. got f32, expected i64 +(assert_invalid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:102:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:327:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:102:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:328:32: type mismatch at i64.rem_u. got i32, expected i64 +(assert_invalid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:103:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:328:32: type mismatch at i64.rem_u. got f32, expected i64 +(assert_invalid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:103:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:328:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:329:32: type mismatch at i64.rotl. got i32, expected i64 +(assert_invalid (module (func (i64.rotl (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:104:41: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:329:32: type mismatch at i64.rotl. got f32, expected i64 (assert_invalid (module (func (i64.rotl (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:104:55: type mismatch of argument 1 of binary op. got f32, expected i64 -...valid (module (func (i64.rotl (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:329:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.rotl (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:105:41: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:330:32: type mismatch at i64.rotr. got i32, expected i64 (assert_invalid (module (func (i64.rotr (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:105:55: type mismatch of argument 1 of binary op. got f32, expected i64 -...valid (module (func (i64.rotr (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:330:32: type mismatch at i64.rotr. got f32, expected i64 +(assert_invalid (module (func (i64.rotr (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:330:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.rotr (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:106:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:331:32: type mismatch at i64.shl. got i32, expected i64 (assert_invalid (module (func (i64.shl (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:106:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:331:32: type mismatch at i64.shl. got f32, expected i64 +(assert_invalid (module (func (i64.shl (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:331:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.shl (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:332:32: type mismatch at i64.shr_s. got i32, expected i64 +(assert_invalid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:107:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:332:32: type mismatch at i64.shr_s. got f32, expected i64 +(assert_invalid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:107:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:332:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:108:42: type mismatch of argument 0 of binary op. got i32, expected i64 -...ert_invalid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:333:32: type mismatch at i64.shr_u. got i32, expected i64 +(assert_invalid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:108:56: type mismatch of argument 1 of binary op. got f32, expected i64 -...alid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:333:32: type mismatch at i64.shr_u. got f32, expected i64 +(assert_invalid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type... + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:109:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:333:25: unable to join type i64 (type of last operation) with type void (function signature result type). +...valid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:334:32: type mismatch at i64.sub. got i32, expected i64 +(assert_invalid (module (func (i64.sub (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:334:32: type mismatch at i64.sub. got f32, expected i64 (assert_invalid (module (func (i64.sub (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:109:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:334:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.sub (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:335:32: type mismatch at i64.xor. got i32, expected i64 +(assert_invalid (module (func (i64.xor (i32.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:110:40: type mismatch of argument 0 of binary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:335:32: type mismatch at i64.xor. got f32, expected i64 (assert_invalid (module (func (i64.xor (i32.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:110:54: type mismatch of argument 1 of binary op. got f32, expected i64 + third_party/testsuite/typecheck.wast:335:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (i64.xor (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:111:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:336:32: type mismatch at f32.add. got i64, expected f32 (assert_invalid (module (func (f32.add (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:111:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:336:32: type mismatch at f32.add. got f64, expected f32 +(assert_invalid (module (func (f32.add (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:336:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.add (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:337:32: type mismatch at f32.copysign. got i64, expected f32 +(assert_invalid (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "t... + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:112:45: type mismatch of argument 0 of binary op. got i64, expected f32 -..._invalid (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:337:32: type mismatch at f32.copysign. got f64, expected f32 +(assert_invalid (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "t... + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:112:59: type mismatch of argument 1 of binary op. got f64, expected f32 -...d (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:337:25: unable to join type f32 (type of last operation) with type void (function signature result type). +...alid (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "type mism... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:338:32: type mismatch at f32.div. got i64, expected f32 +(assert_invalid (module (func (f32.div (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:113:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:338:32: type mismatch at f32.div. got f64, expected f32 (assert_invalid (module (func (f32.div (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:113:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:338:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.div (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:114:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:339:32: type mismatch at f32.max. got i64, expected f32 (assert_invalid (module (func (f32.max (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:114:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:339:32: type mismatch at f32.max. got f64, expected f32 +(assert_invalid (module (func (f32.max (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:339:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.max (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:115:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:340:32: type mismatch at f32.min. got i64, expected f32 (assert_invalid (module (func (f32.min (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:115:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:340:32: type mismatch at f32.min. got f64, expected f32 +(assert_invalid (module (func (f32.min (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:340:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.min (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:116:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:341:32: type mismatch at f32.mul. got i64, expected f32 (assert_invalid (module (func (f32.mul (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:116:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:341:32: type mismatch at f32.mul. got f64, expected f32 +(assert_invalid (module (func (f32.mul (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:341:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.mul (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:342:32: type mismatch at f32.sub. got i64, expected f32 +(assert_invalid (module (func (f32.sub (i64.const 0) (f64.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:117:40: type mismatch of argument 0 of binary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:342:32: type mismatch at f32.sub. got f64, expected f32 (assert_invalid (module (func (f32.sub (i64.const 0) (f64.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:117:54: type mismatch of argument 1 of binary op. got f64, expected f32 + third_party/testsuite/typecheck.wast:342:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f32.sub (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:343:32: type mismatch at f64.add. got i64, expected f64 +(assert_invalid (module (func (f64.add (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:118:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:343:32: type mismatch at f64.add. got f32, expected f64 (assert_invalid (module (func (f64.add (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:118:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:343:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.add (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:344:32: type mismatch at f64.copysign. got i64, expected f64 +(assert_invalid (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "t... + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:119:45: type mismatch of argument 0 of binary op. got i64, expected f64 -..._invalid (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "type ... - ^ + third_party/testsuite/typecheck.wast:344:32: type mismatch at f64.copysign. got f32, expected f64 +(assert_invalid (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "t... + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:119:59: type mismatch of argument 1 of binary op. got f32, expected f64 -...d (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:344:25: unable to join type f64 (type of last operation) with type void (function signature result type). +...alid (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "type mism... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:120:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:345:32: type mismatch at f64.div. got i64, expected f64 (assert_invalid (module (func (f64.div (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:120:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:345:32: type mismatch at f64.div. got f32, expected f64 +(assert_invalid (module (func (f64.div (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:345:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.div (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:346:32: type mismatch at f64.max. got i64, expected f64 +(assert_invalid (module (func (f64.max (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:121:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:346:32: type mismatch at f64.max. got f32, expected f64 (assert_invalid (module (func (f64.max (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:121:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:346:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.max (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:347:32: type mismatch at f64.min. got i64, expected f64 +(assert_invalid (module (func (f64.min (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:122:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:347:32: type mismatch at f64.min. got f32, expected f64 (assert_invalid (module (func (f64.min (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:122:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:347:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.min (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:348:32: type mismatch at f64.mul. got i64, expected f64 +(assert_invalid (module (func (f64.mul (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:123:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:348:32: type mismatch at f64.mul. got f32, expected f64 (assert_invalid (module (func (f64.mul (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:123:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:348:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.mul (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:124:40: type mismatch of argument 0 of binary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:349:32: type mismatch at f64.sub. got i64, expected f64 (assert_invalid (module (func (f64.sub (i64.const 0) (f32.const 0)))) "type m... - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:124:54: type mismatch of argument 1 of binary op. got f32, expected f64 + third_party/testsuite/typecheck.wast:349:32: type mismatch at f64.sub. got f32, expected f64 +(assert_invalid (module (func (f64.sub (i64.const 0) (f32.const 0)))) "type m... + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:349:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...nvalid (module (func (f64.sub (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:127:40: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:352:32: type mismatch at i32.eqz. got i64, expected i32 (assert_invalid (module (func (i32.eqz (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:352:25: unable to join type i32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i32.eqz (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:353:32: type mismatch at i32.clz. got i64, expected i32 +(assert_invalid (module (func (i32.clz (i64.const 0)))) "type mismatch") + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:128:40: type mismatch of unary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:353:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.clz (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:354:32: type mismatch at i32.ctz. got i64, expected i32 +(assert_invalid (module (func (i32.ctz (i64.const 0)))) "type mismatch") + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:129:40: type mismatch of unary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:354:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.ctz (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:355:32: type mismatch at i32.popcnt. got i64, expected i32 +(assert_invalid (module (func (i32.popcnt (i64.const 0)))) "type mismatch") + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:130:43: type mismatch of unary op. got i64, expected i32 + third_party/testsuite/typecheck.wast:355:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.popcnt (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:131:40: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:356:32: type mismatch at i64.eqz. got i32, expected i64 (assert_invalid (module (func (i64.eqz (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:132:40: type mismatch of unary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:356:25: unable to join type i32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i64.eqz (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:357:32: type mismatch at i64.clz. got i32, expected i64 (assert_invalid (module (func (i64.clz (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:357:25: unable to join type i64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i64.clz (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:358:32: type mismatch at i64.ctz. got i32, expected i64 +(assert_invalid (module (func (i64.ctz (i32.const 0)))) "type mismatch") + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:133:40: type mismatch of unary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:358:25: unable to join type i64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i64.ctz (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:359:32: type mismatch at i64.popcnt. got i32, expected i64 +(assert_invalid (module (func (i64.popcnt (i32.const 0)))) "type mismatch") + ^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:134:43: type mismatch of unary op. got i32, expected i64 + third_party/testsuite/typecheck.wast:359:25: unable to join type i64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i64.popcnt (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:360:32: type mismatch at f32.abs. got i64, expected f32 +(assert_invalid (module (func (f32.abs (i64.const 0)))) "type mismatch") + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:135:40: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:360:25: unable to join type f32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f32.abs (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:136:41: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:361:32: type mismatch at f32.ceil. got i64, expected f32 (assert_invalid (module (func (f32.ceil (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:137:42: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:361:25: unable to join type f32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f32.ceil (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:362:32: type mismatch at f32.floor. got i64, expected f32 (assert_invalid (module (func (f32.floor (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:362:25: unable to join type f32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f32.floor (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:363:32: type mismatch at f32.nearest. got i64, expected f32 +(assert_invalid (module (func (f32.nearest (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:138:44: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:363:25: unable to join type f32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f32.nearest (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:364:32: type mismatch at f32.neg. got i64, expected f32 +(assert_invalid (module (func (f32.neg (i64.const 0)))) "type mismatch") + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:139:40: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:364:25: unable to join type f32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f32.neg (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:365:32: type mismatch at f32.sqrt. got i64, expected f32 +(assert_invalid (module (func (f32.sqrt (i64.const 0)))) "type mismatch") + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:140:41: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:365:25: unable to join type f32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f32.sqrt (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:141:42: type mismatch of unary op. got i64, expected f32 + third_party/testsuite/typecheck.wast:366:32: type mismatch at f32.trunc. got i64, expected f32 (assert_invalid (module (func (f32.trunc (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:142:40: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:366:25: unable to join type f32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f32.trunc (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:367:32: type mismatch at f64.abs. got i64, expected f64 (assert_invalid (module (func (f64.abs (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:367:25: unable to join type f64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f64.abs (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:368:32: type mismatch at f64.ceil. got i64, expected f64 +(assert_invalid (module (func (f64.ceil (i64.const 0)))) "type mismatch") + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:143:41: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:368:25: unable to join type f64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f64.ceil (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:369:32: type mismatch at f64.floor. got i64, expected f64 +(assert_invalid (module (func (f64.floor (i64.const 0)))) "type mismatch") + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:144:42: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:369:25: unable to join type f64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f64.floor (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:370:32: type mismatch at f64.nearest. got i64, expected f64 +(assert_invalid (module (func (f64.nearest (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:145:44: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:370:25: unable to join type f64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f64.nearest (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:146:40: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:371:32: type mismatch at f64.neg. got i64, expected f64 (assert_invalid (module (func (f64.neg (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:147:41: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:371:25: unable to join type f64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f64.neg (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:372:32: type mismatch at f64.sqrt. got i64, expected f64 (assert_invalid (module (func (f64.sqrt (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:372:25: unable to join type f64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f64.sqrt (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:373:32: type mismatch at f64.trunc. got i64, expected f64 +(assert_invalid (module (func (f64.trunc (i64.const 0)))) "type mismatch") + ^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:148:42: type mismatch of unary op. got i64, expected f64 + third_party/testsuite/typecheck.wast:373:25: unable to join type f64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (f64.trunc (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:376:32: type mismatch at i32.eq. got i64, expected i32 +(assert_invalid (module (func (i32.eq (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:151:39: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:376:32: type mismatch at i32.eq. got f32, expected i32 (assert_invalid (module (func (i32.eq (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:151:53: type mismatch of argument 1 of compare op. got f32, expected i32 + third_party/testsuite/typecheck.wast:376:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (i32.eq (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:377:32: type mismatch at i32.ge_s. got i64, expected i32 +(assert_invalid (module (func (i32.ge_s (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:152:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:377:32: type mismatch at i32.ge_s. got f32, expected i32 (assert_invalid (module (func (i32.ge_s (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:152:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.ge_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:377:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.ge_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:153:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:378:32: type mismatch at i32.ge_u. got i64, expected i32 (assert_invalid (module (func (i32.ge_u (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:153:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.ge_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:378:32: type mismatch at i32.ge_u. got f32, expected i32 +(assert_invalid (module (func (i32.ge_u (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:378:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.ge_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:154:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:379:32: type mismatch at i32.gt_s. got i64, expected i32 (assert_invalid (module (func (i32.gt_s (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:379:32: type mismatch at i32.gt_s. got f32, expected i32 +(assert_invalid (module (func (i32.gt_s (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:379:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.gt_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:154:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.gt_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:380:32: type mismatch at i32.gt_u. got i64, expected i32 +(assert_invalid (module (func (i32.gt_u (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:155:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:380:32: type mismatch at i32.gt_u. got f32, expected i32 (assert_invalid (module (func (i32.gt_u (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:380:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.gt_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:155:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.gt_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:381:32: type mismatch at i32.le_s. got i64, expected i32 +(assert_invalid (module (func (i32.le_s (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:156:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:381:32: type mismatch at i32.le_s. got f32, expected i32 (assert_invalid (module (func (i32.le_s (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:156:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.le_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:381:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.le_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:382:32: type mismatch at i32.le_u. got i64, expected i32 +(assert_invalid (module (func (i32.le_u (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:157:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:382:32: type mismatch at i32.le_u. got f32, expected i32 (assert_invalid (module (func (i32.le_u (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:157:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.le_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:382:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.le_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:158:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:383:32: type mismatch at i32.lt_s. got i64, expected i32 (assert_invalid (module (func (i32.lt_s (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:158:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.lt_s (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:383:32: type mismatch at i32.lt_s. got f32, expected i32 +(assert_invalid (module (func (i32.lt_s (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:383:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.lt_s (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:159:41: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:384:32: type mismatch at i32.lt_u. got i64, expected i32 (assert_invalid (module (func (i32.lt_u (i64.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:159:55: type mismatch of argument 1 of compare op. got f32, expected i32 -...valid (module (func (i32.lt_u (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:384:32: type mismatch at i32.lt_u. got f32, expected i32 +(assert_invalid (module (func (i32.lt_u (i64.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:160:39: type mismatch of argument 0 of compare op. got i64, expected i32 + third_party/testsuite/typecheck.wast:384:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i32.lt_u (i64.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:385:32: type mismatch at i32.ne. got i64, expected i32 (assert_invalid (module (func (i32.ne (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:160:53: type mismatch of argument 1 of compare op. got f32, expected i32 + third_party/testsuite/typecheck.wast:385:32: type mismatch at i32.ne. got f32, expected i32 +(assert_invalid (module (func (i32.ne (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:385:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (i32.ne (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:386:32: type mismatch at i64.eq. got i32, expected i64 +(assert_invalid (module (func (i64.eq (i32.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:161:39: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:386:32: type mismatch at i64.eq. got f32, expected i64 (assert_invalid (module (func (i64.eq (i32.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:161:53: type mismatch of argument 1 of compare op. got f32, expected i64 + third_party/testsuite/typecheck.wast:386:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (i64.eq (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:387:32: type mismatch at i64.ge_s. got i32, expected i64 +(assert_invalid (module (func (i64.ge_s (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:162:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:387:32: type mismatch at i64.ge_s. got f32, expected i64 (assert_invalid (module (func (i64.ge_s (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:387:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.ge_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:162:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.ge_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:388:32: type mismatch at i64.ge_u. got i32, expected i64 +(assert_invalid (module (func (i64.ge_u (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:163:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:388:32: type mismatch at i64.ge_u. got f32, expected i64 (assert_invalid (module (func (i64.ge_u (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:163:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.ge_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:388:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.ge_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:389:32: type mismatch at i64.gt_s. got i32, expected i64 +(assert_invalid (module (func (i64.gt_s (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:164:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:389:32: type mismatch at i64.gt_s. got f32, expected i64 (assert_invalid (module (func (i64.gt_s (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:164:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.gt_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:389:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.gt_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:165:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:390:32: type mismatch at i64.gt_u. got i32, expected i64 (assert_invalid (module (func (i64.gt_u (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:165:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.gt_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:390:32: type mismatch at i64.gt_u. got f32, expected i64 +(assert_invalid (module (func (i64.gt_u (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:390:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.gt_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:166:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:391:32: type mismatch at i64.le_s. got i32, expected i64 (assert_invalid (module (func (i64.le_s (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:391:32: type mismatch at i64.le_s. got f32, expected i64 +(assert_invalid (module (func (i64.le_s (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:391:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.le_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:166:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.le_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:392:32: type mismatch at i64.le_u. got i32, expected i64 +(assert_invalid (module (func (i64.le_u (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:167:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:392:32: type mismatch at i64.le_u. got f32, expected i64 (assert_invalid (module (func (i64.le_u (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:392:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.le_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:167:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.le_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:393:32: type mismatch at i64.lt_s. got i32, expected i64 +(assert_invalid (module (func (i64.lt_s (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:168:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:393:32: type mismatch at i64.lt_s. got f32, expected i64 (assert_invalid (module (func (i64.lt_s (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:168:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.lt_s (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:393:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.lt_s (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:394:32: type mismatch at i64.lt_u. got i32, expected i64 +(assert_invalid (module (func (i64.lt_u (i32.const 0) (f32.const 0)))) "type ... + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:169:41: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:394:32: type mismatch at i64.lt_u. got f32, expected i64 (assert_invalid (module (func (i64.lt_u (i32.const 0) (f32.const 0)))) "type ... - ^ + ^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:169:55: type mismatch of argument 1 of compare op. got f32, expected i64 -...valid (module (func (i64.lt_u (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + third_party/testsuite/typecheck.wast:394:25: unable to join type i32 (type of last operation) with type void (function signature result type). +...nvalid (module (func (i64.lt_u (i32.const 0) (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:170:39: type mismatch of argument 0 of compare op. got i32, expected i64 + third_party/testsuite/typecheck.wast:395:32: type mismatch at i64.ne. got i32, expected i64 (assert_invalid (module (func (i64.ne (i32.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:170:53: type mismatch of argument 1 of compare op. got f32, expected i64 + third_party/testsuite/typecheck.wast:395:32: type mismatch at i64.ne. got f32, expected i64 +(assert_invalid (module (func (i64.ne (i32.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:395:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (i64.ne (i32.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:171:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:396:32: type mismatch at f32.eq. got i64, expected f32 (assert_invalid (module (func (f32.eq (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:171:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:396:32: type mismatch at f32.eq. got f64, expected f32 +(assert_invalid (module (func (f32.eq (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:396:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.eq (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:397:32: type mismatch at f32.ge. got i64, expected f32 +(assert_invalid (module (func (f32.ge (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:172:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:397:32: type mismatch at f32.ge. got f64, expected f32 (assert_invalid (module (func (f32.ge (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:172:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:397:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.ge (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:398:32: type mismatch at f32.gt. got i64, expected f32 +(assert_invalid (module (func (f32.gt (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:173:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:398:32: type mismatch at f32.gt. got f64, expected f32 (assert_invalid (module (func (f32.gt (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:173:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:398:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.gt (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:399:32: type mismatch at f32.le. got i64, expected f32 +(assert_invalid (module (func (f32.le (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:174:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:399:32: type mismatch at f32.le. got f64, expected f32 (assert_invalid (module (func (f32.le (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:174:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:399:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.le (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:175:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:400:32: type mismatch at f32.lt. got i64, expected f32 (assert_invalid (module (func (f32.lt (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:175:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:400:32: type mismatch at f32.lt. got f64, expected f32 +(assert_invalid (module (func (f32.lt (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:400:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.lt (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:176:39: type mismatch of argument 0 of compare op. got i64, expected f32 + third_party/testsuite/typecheck.wast:401:32: type mismatch at f32.ne. got i64, expected f32 (assert_invalid (module (func (f32.ne (i64.const 0) (f64.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:176:53: type mismatch of argument 1 of compare op. got f64, expected f32 + third_party/testsuite/typecheck.wast:401:32: type mismatch at f32.ne. got f64, expected f32 +(assert_invalid (module (func (f32.ne (i64.const 0) (f64.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:401:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f32.ne (i64.const 0) (f64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:402:32: type mismatch at f64.eq. got i64, expected f64 +(assert_invalid (module (func (f64.eq (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:177:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:402:32: type mismatch at f64.eq. got f32, expected f64 (assert_invalid (module (func (f64.eq (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:177:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:402:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.eq (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:403:32: type mismatch at f64.ge. got i64, expected f64 +(assert_invalid (module (func (f64.ge (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:178:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:403:32: type mismatch at f64.ge. got f32, expected f64 (assert_invalid (module (func (f64.ge (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:178:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:403:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.ge (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:404:32: type mismatch at f64.gt. got i64, expected f64 +(assert_invalid (module (func (f64.gt (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:179:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:404:32: type mismatch at f64.gt. got f32, expected f64 (assert_invalid (module (func (f64.gt (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:179:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:404:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.gt (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:180:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:405:32: type mismatch at f64.le. got i64, expected f64 (assert_invalid (module (func (f64.le (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:180:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:405:32: type mismatch at f64.le. got f32, expected f64 +(assert_invalid (module (func (f64.le (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:405:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.le (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:181:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:406:32: type mismatch at f64.lt. got i64, expected f64 (assert_invalid (module (func (f64.lt (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:181:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:406:32: type mismatch at f64.lt. got f32, expected f64 +(assert_invalid (module (func (f64.lt (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:406:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.lt (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:182:39: type mismatch of argument 0 of compare op. got i64, expected f64 + third_party/testsuite/typecheck.wast:407:32: type mismatch at f64.ne. got i64, expected f64 (assert_invalid (module (func (f64.ne (i64.const 0) (f32.const 0)))) "type mi... - ^ + ^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:182:53: type mismatch of argument 1 of compare op. got f32, expected f64 + third_party/testsuite/typecheck.wast:407:32: type mismatch at f64.ne. got f32, expected f64 +(assert_invalid (module (func (f64.ne (i64.const 0) (f32.const 0)))) "type mi... + ^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:407:25: unable to join type i32 (type of last operation) with type void (function signature result type). ...invalid (module (func (f64.ne (i64.const 0) (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:410:32: type mismatch at i32.wrap/i64. got f32, expected i64 +(assert_invalid (module (func (i32.wrap/i64 (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:185:45: type mismatch of convert op. got f32, expected i64 + third_party/testsuite/typecheck.wast:410:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.wrap/i64 (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:411:32: type mismatch at i32.trunc_s/f32. got i64, expected f32 +(assert_invalid (module (func (i32.trunc_s/f32 (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:186:48: type mismatch of convert op. got i64, expected f32 + third_party/testsuite/typecheck.wast:411:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.trunc_s/f32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:187:48: type mismatch of convert op. got i64, expected f32 + third_party/testsuite/typecheck.wast:412:32: type mismatch at i32.trunc_u/f32. got i64, expected f32 (assert_invalid (module (func (i32.trunc_u/f32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:188:48: type mismatch of convert op. got i64, expected f64 + third_party/testsuite/typecheck.wast:412:25: unable to join type i32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i32.trunc_u/f32 (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:413:32: type mismatch at i32.trunc_s/f64. got i64, expected f64 (assert_invalid (module (func (i32.trunc_s/f64 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:413:25: unable to join type i32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i32.trunc_s/f64 (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:414:32: type mismatch at i32.trunc_u/f64. got i64, expected f64 +(assert_invalid (module (func (i32.trunc_u/f64 (i64.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:189:48: type mismatch of convert op. got i64, expected f64 + third_party/testsuite/typecheck.wast:414:25: unable to join type i32 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i32.trunc_u/f64 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:415:32: type mismatch at i32.reinterpret/f32. got i64, expected f32 +(assert_invalid (module (func (i32.reinterpret/f32 (i64.const 0)))) "type mis... + ^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:190:52: type mismatch of convert op. got i64, expected f32 + third_party/testsuite/typecheck.wast:415:25: unable to join type i32 (type of last operation) with type void (function signature result type). ..._invalid (module (func (i32.reinterpret/f32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:416:32: type mismatch at i64.extend_s/i32. got f32, expected i32 +(assert_invalid (module (func (i64.extend_s/i32 (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:191:49: type mismatch of convert op. got f32, expected i32 + third_party/testsuite/typecheck.wast:416:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...ert_invalid (module (func (i64.extend_s/i32 (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:192:49: type mismatch of convert op. got f32, expected i32 + third_party/testsuite/typecheck.wast:417:32: type mismatch at i64.extend_u/i32. got f32, expected i32 +(assert_invalid (module (func (i64.extend_u/i32 (f32.const 0)))) "type mismat... + ^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:417:25: unable to join type i64 (type of last operation) with type void (function signature result type). ...ert_invalid (module (func (i64.extend_u/i32 (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:418:32: type mismatch at i64.trunc_s/f32. got i32, expected f32 +(assert_invalid (module (func (i64.trunc_s/f32 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:193:48: type mismatch of convert op. got i32, expected f32 + third_party/testsuite/typecheck.wast:418:25: unable to join type i64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i64.trunc_s/f32 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:419:32: type mismatch at i64.trunc_u/f32. got i32, expected f32 +(assert_invalid (module (func (i64.trunc_u/f32 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:194:48: type mismatch of convert op. got i32, expected f32 + third_party/testsuite/typecheck.wast:419:25: unable to join type i64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i64.trunc_u/f32 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:420:32: type mismatch at i64.trunc_s/f64. got i32, expected f64 +(assert_invalid (module (func (i64.trunc_s/f64 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:195:48: type mismatch of convert op. got i32, expected f64 + third_party/testsuite/typecheck.wast:420:25: unable to join type i64 (type of last operation) with type void (function signature result type). (assert_invalid (module (func (i64.trunc_s/f64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:196:48: type mismatch of convert op. got i32, expected f64 + third_party/testsuite/typecheck.wast:421:32: type mismatch at i64.trunc_u/f64. got i32, expected f64 (assert_invalid (module (func (i64.trunc_u/f64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:197:52: type mismatch of convert op. got i32, expected f64 + third_party/testsuite/typecheck.wast:421:25: unable to join type i64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (i64.trunc_u/f64 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:422:32: type mismatch at i64.reinterpret/f64. got i32, expected f64 +(assert_invalid (module (func (i64.reinterpret/f64 (i32.const 0)))) "type mis... + ^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:422:25: unable to join type i64 (type of last operation) with type void (function signature result type). ..._invalid (module (func (i64.reinterpret/f64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:198:50: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:423:32: type mismatch at f32.convert_s/i32. got i64, expected i32 +(assert_invalid (module (func (f32.convert_s/i32 (i64.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:423:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f32.convert_s/i32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:424:32: type mismatch at f32.convert_u/i32. got i64, expected i32 +(assert_invalid (module (func (f32.convert_u/i32 (i64.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:199:50: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:424:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f32.convert_u/i32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:200:50: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:425:32: type mismatch at f32.convert_s/i64. got i32, expected i64 +(assert_invalid (module (func (f32.convert_s/i64 (i32.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:425:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f32.convert_s/i64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:426:32: type mismatch at f32.convert_u/i64. got i32, expected i64 +(assert_invalid (module (func (f32.convert_u/i64 (i32.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:201:50: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:426:25: unable to join type f32 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f32.convert_u/i64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:202:47: type mismatch of convert op. got i32, expected f64 + third_party/testsuite/typecheck.wast:427:32: type mismatch at f32.demote/f64. got i32, expected f64 (assert_invalid (module (func (f32.demote/f64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:427:25: unable to join type f32 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f32.demote/f64 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:428:32: type mismatch at f32.reinterpret/i32. got i64, expected i32 +(assert_invalid (module (func (f32.reinterpret/i32 (i64.const 0)))) "type mis... + ^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:203:52: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:428:25: unable to join type f32 (type of last operation) with type void (function signature result type). ..._invalid (module (func (f32.reinterpret/i32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:204:50: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:429:32: type mismatch at f64.convert_s/i32. got i64, expected i32 +(assert_invalid (module (func (f64.convert_s/i32 (i64.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:429:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f64.convert_s/i32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:430:32: type mismatch at f64.convert_u/i32. got i64, expected i32 +(assert_invalid (module (func (f64.convert_u/i32 (i64.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:205:50: type mismatch of convert op. got i64, expected i32 + third_party/testsuite/typecheck.wast:430:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f64.convert_u/i32 (i64.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:431:32: type mismatch at f64.convert_s/i64. got i32, expected i64 +(assert_invalid (module (func (f64.convert_s/i64 (i32.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:206:50: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:431:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f64.convert_s/i64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:207:50: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:432:32: type mismatch at f64.convert_u/i64. got i32, expected i64 +(assert_invalid (module (func (f64.convert_u/i64 (i32.const 0)))) "type misma... + ^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:432:25: unable to join type f64 (type of last operation) with type void (function signature result type). ...rt_invalid (module (func (f64.convert_u/i64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:208:48: type mismatch of convert op. got i32, expected f32 + third_party/testsuite/typecheck.wast:433:32: type mismatch at f64.promote/f32. got i32, expected f32 (assert_invalid (module (func (f64.promote/f32 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:209:52: type mismatch of convert op. got i32, expected i64 + third_party/testsuite/typecheck.wast:433:25: unable to join type f64 (type of last operation) with type void (function signature result type). +(assert_invalid (module (func (f64.promote/f32 (i32.const 0)))) "type mismatch") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:434:32: type mismatch at f64.reinterpret/i64. got i32, expected i64 +(assert_invalid (module (func (f64.reinterpret/i64 (i32.const 0)))) "type mis... + ^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:434:25: unable to join type f64 (type of last operation) with type void (function signature result type). ..._invalid (module (func (f64.reinterpret/i64 (i32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +assert_invalid error: + third_party/testsuite/typecheck.wast:437:43: type mismatch at grow_memory. got f32, expected i32 +...valid (module (memory 1) (func (grow_memory (f32.const 0)))) "type mismatch") + ^^^^^^^^^^^ assert_invalid error: - third_party/testsuite/typecheck.wast:212:55: type mismatch of grow_memory. got f32, expected i32 + third_party/testsuite/typecheck.wast:437:36: unable to join type i32 (type of last operation) with type void (function signature result type). ...valid (module (memory 1) (func (grow_memory (f32.const 0)))) "type mismatch") - ^ + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0/0 tests passed. ;;; STDOUT ;;) |