summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/spec/binary.txt216
-rw-r--r--test/spec/data.txt85
-rw-r--r--test/spec/elem.txt85
-rw-r--r--test/spec/exception-handling/binary.txt216
-rw-r--r--test/spec/extended-const/data.txt85
-rw-r--r--test/spec/extended-const/elem.txt85
-rw-r--r--test/spec/extended-const/global.txt116
-rw-r--r--test/spec/global.txt116
-rw-r--r--test/spec/multi-memory/binary.txt196
-rw-r--r--test/spec/multi-memory/data.txt85
-rw-r--r--test/spec/unreached-valid.txt3
m---------third_party/testsuite0
12 files changed, 673 insertions, 615 deletions
diff --git a/test/spec/binary.txt b/test/spec/binary.txt
index eb353856..30b62f3c 100644
--- a/test/spec/binary.txt
+++ b/test/spec/binary.txt
@@ -67,219 +67,219 @@ out/test/spec/binary.wast:51: assert_malformed passed:
000000a: error: invalid section code: 129
out/test/spec/binary.wast:52: assert_malformed passed:
000000a: error: invalid section code: 255
-out/test/spec/binary.wast:165: assert_malformed passed:
+out/test/spec/binary.wast:210: assert_malformed passed:
000000c: error: unexpected type form (got 0xe0)
-out/test/spec/binary.wast:178: assert_malformed passed:
+out/test/spec/binary.wast:223: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:188: assert_malformed passed:
+out/test/spec/binary.wast:233: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:198: assert_malformed passed:
+out/test/spec/binary.wast:243: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:209: assert_malformed passed:
+out/test/spec/binary.wast:254: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:219: assert_malformed passed:
+out/test/spec/binary.wast:264: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:231: assert_malformed passed:
+out/test/spec/binary.wast:276: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:239: assert_malformed passed:
+out/test/spec/binary.wast:284: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:249: assert_malformed passed:
+out/test/spec/binary.wast:294: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:259: assert_malformed passed:
+out/test/spec/binary.wast:304: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:269: assert_malformed passed:
+out/test/spec/binary.wast:314: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:279: assert_malformed passed:
+out/test/spec/binary.wast:324: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:290: assert_malformed passed:
+out/test/spec/binary.wast:335: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:300: assert_malformed passed:
+out/test/spec/binary.wast:345: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:310: assert_malformed passed:
+out/test/spec/binary.wast:355: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:320: assert_malformed passed:
+out/test/spec/binary.wast:365: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:331: assert_malformed passed:
+out/test/spec/binary.wast:376: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:341: assert_malformed passed:
+out/test/spec/binary.wast:386: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:351: assert_malformed passed:
+out/test/spec/binary.wast:396: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:361: assert_malformed passed:
+out/test/spec/binary.wast:406: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:373: assert_malformed passed:
+out/test/spec/binary.wast:418: assert_malformed passed:
000001b: error: function body must end with END opcode
-out/test/spec/binary.wast:394: assert_malformed passed:
+out/test/spec/binary.wast:439: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/binary.wast:410: assert_malformed passed:
+out/test/spec/binary.wast:455: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/binary.wast:430: assert_malformed passed:
+out/test/spec/binary.wast:475: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:438: assert_malformed passed:
+out/test/spec/binary.wast:483: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/binary.wast:457: assert_malformed passed:
+out/test/spec/binary.wast:502: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/binary.wast:476: assert_malformed passed:
+out/test/spec/binary.wast:521: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/binary.wast:495: assert_malformed passed:
+out/test/spec/binary.wast:540: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/binary.wast:516: assert_malformed passed:
+out/test/spec/binary.wast:561: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:526: assert_malformed passed:
+out/test/spec/binary.wast:571: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:537: assert_malformed passed:
+out/test/spec/binary.wast:582: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:547: assert_malformed passed:
+out/test/spec/binary.wast:592: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:559: assert_malformed passed:
+out/test/spec/binary.wast:604: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:567: assert_malformed passed:
+out/test/spec/binary.wast:612: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/binary.wast:575: assert_malformed passed:
+out/test/spec/binary.wast:620: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/binary.wast:594: assert_malformed passed:
+out/test/spec/binary.wast:639: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/binary.wast:613: assert_malformed passed:
+out/test/spec/binary.wast:658: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/binary.wast:631: assert_malformed passed:
+out/test/spec/binary.wast:676: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/binary.wast:650: assert_malformed passed:
+out/test/spec/binary.wast:695: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/binary.wast:669: assert_malformed passed:
+out/test/spec/binary.wast:714: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/binary.wast:688: assert_malformed passed:
+out/test/spec/binary.wast:733: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/binary.wast:707: assert_malformed passed:
+out/test/spec/binary.wast:752: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/binary.wast:729: assert_malformed passed:
+out/test/spec/binary.wast:774: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:739: assert_malformed passed:
+out/test/spec/binary.wast:784: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:749: assert_malformed passed:
+out/test/spec/binary.wast:794: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:759: assert_malformed passed:
+out/test/spec/binary.wast:804: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/binary.wast:770: assert_malformed passed:
+out/test/spec/binary.wast:815: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:780: assert_malformed passed:
+out/test/spec/binary.wast:825: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:790: assert_malformed passed:
+out/test/spec/binary.wast:835: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:800: assert_malformed passed:
+out/test/spec/binary.wast:845: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/binary.wast:812: assert_malformed passed:
+out/test/spec/binary.wast:857: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/binary.wast:832: assert_malformed passed:
+out/test/spec/binary.wast:877: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/binary.wast:852: assert_malformed passed:
+out/test/spec/binary.wast:897: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/binary.wast:871: assert_malformed passed:
+out/test/spec/binary.wast:916: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/binary.wast:890: assert_malformed passed:
+out/test/spec/binary.wast:935: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/binary.wast:910: assert_malformed passed:
+out/test/spec/binary.wast:955: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/binary.wast:929: assert_malformed passed:
+out/test/spec/binary.wast:974: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/binary.wast:948: assert_malformed passed:
+out/test/spec/binary.wast:993: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/binary.wast:966: assert_malformed passed:
+out/test/spec/binary.wast:1011: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/binary.wast:984: assert_malformed passed:
+out/test/spec/binary.wast:1029: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/binary.wast:1003: assert_malformed passed:
+out/test/spec/binary.wast:1048: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/binary.wast:1020: assert_malformed passed:
+out/test/spec/binary.wast:1065: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/binary.wast:1037: assert_malformed passed:
+out/test/spec/binary.wast:1082: assert_malformed passed:
000001c: error: local count must be < 0x10000000
-out/test/spec/binary.wast:1053: assert_malformed passed:
+out/test/spec/binary.wast:1098: assert_malformed passed:
0000030: error: local count must be < 0x10000000
-out/test/spec/binary.wast:1087: assert_malformed passed:
+out/test/spec/binary.wast:1132: assert_malformed passed:
0000013: error: function signature count != function body count
-out/test/spec/binary.wast:1097: assert_malformed passed:
+out/test/spec/binary.wast:1142: assert_malformed passed:
000000b: error: function signature count != function body count
-out/test/spec/binary.wast:1106: assert_malformed passed:
+out/test/spec/binary.wast:1151: assert_malformed passed:
0000016: error: function signature count != function body count
-out/test/spec/binary.wast:1117: assert_malformed passed:
+out/test/spec/binary.wast:1162: assert_malformed passed:
0000015: error: function signature count != function body count
-out/test/spec/binary.wast:1140: assert_malformed passed:
+out/test/spec/binary.wast:1185: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/binary.wast:1150: assert_malformed passed:
+out/test/spec/binary.wast:1195: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/binary.wast:1160: assert_malformed passed:
+out/test/spec/binary.wast:1205: assert_malformed passed:
0000024: error: memory.init requires data count section
-out/test/spec/binary.wast:1182: assert_malformed passed:
+out/test/spec/binary.wast:1227: assert_malformed passed:
000001e: error: data.drop requires data count section
-out/test/spec/binary.wast:1201: assert_malformed passed:
+out/test/spec/binary.wast:1246: assert_malformed passed:
0000024: error: expected ref.null or ref.func in passive element segment
0000025: error: expected END opcode after element expression
-out/test/spec/binary.wast:1227: assert_malformed passed:
+out/test/spec/binary.wast:1272: assert_malformed passed:
0000022: error: table elem type must be a reference type
-out/test/spec/binary.wast:1308: assert_malformed passed:
+out/test/spec/binary.wast:1353: assert_malformed passed:
000000a: error: invalid section size: extends past end
-out/test/spec/binary.wast:1319: assert_malformed passed:
+out/test/spec/binary.wast:1364: assert_malformed passed:
000000e: error: unfinished section (expected end: 0x11)
-out/test/spec/binary.wast:1338: assert_malformed passed:
+out/test/spec/binary.wast:1383: assert_malformed passed:
000000e: error: invalid import tag kind: exceptions not allowed
-out/test/spec/binary.wast:1348: assert_malformed passed:
+out/test/spec/binary.wast:1393: assert_malformed passed:
000000e: error: invalid import tag kind: exceptions not allowed
-out/test/spec/binary.wast:1359: assert_malformed passed:
+out/test/spec/binary.wast:1404: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/binary.wast:1369: assert_malformed passed:
+out/test/spec/binary.wast:1414: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/binary.wast:1380: assert_malformed passed:
+out/test/spec/binary.wast:1425: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/binary.wast:1390: assert_malformed passed:
+out/test/spec/binary.wast:1435: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/binary.wast:1403: assert_malformed passed:
+out/test/spec/binary.wast:1448: assert_malformed passed:
0000027: error: unable to read u32 leb128: string length
-out/test/spec/binary.wast:1422: assert_malformed passed:
+out/test/spec/binary.wast:1467: assert_malformed passed:
000002b: error: unfinished section (expected end: 0x40)
-out/test/spec/binary.wast:1453: assert_malformed passed:
+out/test/spec/binary.wast:1498: assert_malformed passed:
000000b: error: invalid table count 1, only 0 bytes left in section
-out/test/spec/binary.wast:1463: assert_malformed passed:
+out/test/spec/binary.wast:1508: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/binary.wast:1472: assert_malformed passed:
+out/test/spec/binary.wast:1517: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/binary.wast:1482: assert_malformed passed:
+out/test/spec/binary.wast:1527: assert_malformed passed:
000000d: error: malformed table limits flag: 129
-out/test/spec/binary.wast:1500: assert_malformed passed:
+out/test/spec/binary.wast:1545: assert_malformed passed:
000000b: error: invalid memory count 1, only 0 bytes left in section
-out/test/spec/binary.wast:1510: assert_malformed passed:
+out/test/spec/binary.wast:1555: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/binary.wast:1518: assert_malformed passed:
+out/test/spec/binary.wast:1563: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/binary.wast:1527: assert_malformed passed:
+out/test/spec/binary.wast:1572: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/binary.wast:1536: assert_malformed passed:
+out/test/spec/binary.wast:1581: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/binary.wast:1553: assert_malformed passed:
+out/test/spec/binary.wast:1598: assert_malformed passed:
0000010: error: unable to read i32 leb128: global type
-out/test/spec/binary.wast:1564: assert_malformed passed:
+out/test/spec/binary.wast:1609: assert_malformed passed:
0000010: error: unfinished section (expected end: 0x15)
-out/test/spec/binary.wast:1587: assert_malformed passed:
+out/test/spec/binary.wast:1632: assert_malformed passed:
000001b: error: unable to read u32 leb128: string length
-out/test/spec/binary.wast:1608: assert_malformed passed:
+out/test/spec/binary.wast:1653: assert_malformed passed:
000001b: error: unfinished section (expected end: 0x20)
-out/test/spec/binary.wast:1642: assert_malformed passed:
+out/test/spec/binary.wast:1687: assert_malformed passed:
0000021: error: unable to read u32 leb128: elem segment flags
-out/test/spec/binary.wast:1658: assert_malformed passed:
+out/test/spec/binary.wast:1703: assert_malformed passed:
0000024: error: unable to read u32 leb128: elem count
-out/test/spec/binary.wast:1675: assert_malformed passed:
+out/test/spec/binary.wast:1720: assert_malformed passed:
0000021: error: unfinished section (expected end: 0x27)
-out/test/spec/binary.wast:1701: assert_malformed passed:
+out/test/spec/binary.wast:1746: assert_malformed passed:
0000016: error: unable to read u32 leb128: data segment flags
-out/test/spec/binary.wast:1714: assert_malformed passed:
+out/test/spec/binary.wast:1759: assert_malformed passed:
0000016: error: unfinished section (expected end: 0x1c)
-out/test/spec/binary.wast:1727: assert_malformed passed:
+out/test/spec/binary.wast:1772: assert_malformed passed:
0000015: error: unable to read data: data segment data
-out/test/spec/binary.wast:1741: assert_malformed passed:
+out/test/spec/binary.wast:1786: assert_malformed passed:
000001a: error: unfinished section (expected end: 0x1b)
-out/test/spec/binary.wast:1772: assert_malformed passed:
- out/test/spec/binary/binary.169.wasm:0000025: error: function type variable out of range: 11 (max 1)
+out/test/spec/binary.wast:1817: assert_malformed passed:
+ out/test/spec/binary/binary.174.wasm:0000025: error: function type variable out of range: 11 (max 1)
0000025: error: OnBlockExpr callback failed
-out/test/spec/binary.wast:1807: assert_malformed passed:
+out/test/spec/binary.wast:1852: assert_malformed passed:
0000017: error: multiple Start sections
-172/172 tests passed.
+177/177 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/data.txt b/test/spec/data.txt
index 2c1b7b92..c5911687 100644
--- a/test/spec/data.txt
+++ b/test/spec/data.txt
@@ -1,62 +1,71 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/data.wast
(;; STDOUT ;;;
-out/test/spec/data.wast:293: assert_invalid passed:
- out/test/spec/data/data.39.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/data.wast:85: assert_invalid passed:
+ out/test/spec/data/data.9.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/data.wast:89: assert_invalid passed:
+ out/test/spec/data/data.10.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/data.wast:299: assert_invalid passed:
+ out/test/spec/data/data.41.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/data.wast:301: assert_invalid passed:
- out/test/spec/data/data.40.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/data.wast:307: assert_invalid passed:
+ out/test/spec/data/data.42.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/data.wast:314: assert_invalid passed:
- out/test/spec/data/data.41.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/data.wast:320: assert_invalid passed:
+ out/test/spec/data/data.43.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/data.wast:325: assert_invalid passed:
- out/test/spec/data/data.42.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/data.wast:331: assert_invalid passed:
+ out/test/spec/data/data.44.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/data.wast:337: assert_invalid passed:
- out/test/spec/data/data.43.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/data.wast:343: assert_invalid passed:
+ out/test/spec/data/data.45.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/data.wast:359: assert_invalid passed:
- out/test/spec/data/data.44.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/data.wast:365: assert_invalid passed:
+ out/test/spec/data/data.46.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/data.wast:378: assert_invalid passed:
- out/test/spec/data/data.45.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
+out/test/spec/data.wast:384: assert_invalid passed:
+ out/test/spec/data/data.47.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:386: assert_invalid passed:
- out/test/spec/data/data.46.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
+out/test/spec/data.wast:392: assert_invalid passed:
+ out/test/spec/data/data.48.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:394: assert_invalid passed:
- out/test/spec/data/data.47.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
+out/test/spec/data.wast:400: assert_invalid passed:
+ out/test/spec/data/data.49.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
0000012: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:402: assert_invalid passed:
- out/test/spec/data/data.48.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/data.wast:408: assert_invalid passed:
+ out/test/spec/data/data.50.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
0000016: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:410: assert_invalid passed:
- out/test/spec/data/data.49.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/data.wast:416: assert_invalid passed:
+ out/test/spec/data/data.51.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:419: assert_invalid passed:
- out/test/spec/data/data.50.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/data.wast:425: assert_invalid passed:
+ out/test/spec/data/data.52.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/data.wast:428: assert_invalid passed:
- out/test/spec/data/data.51.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
+out/test/spec/data.wast:434: assert_invalid passed:
+ out/test/spec/data/data.53.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
0000014: error: OnUnaryExpr callback failed
-out/test/spec/data.wast:436: assert_invalid passed:
- out/test/spec/data/data.52.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/data.wast:442: assert_invalid passed:
+ out/test/spec/data/data.54.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/data.wast:444: assert_invalid passed:
- out/test/spec/data/data.53.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/data.wast:450: assert_invalid passed:
+ out/test/spec/data/data.55.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/data.wast:452: assert_invalid passed:
- out/test/spec/data/data.54.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/data.wast:458: assert_invalid passed:
+ out/test/spec/data/data.56.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
0000014: error: OnNopExpr callback failed
out/test/spec/data.wast:466: assert_invalid passed:
- out/test/spec/data/data.55.wasm:0000013: error: global variable out of range: 0 (max 0)
+ out/test/spec/data/data.57.wasm:0000020: error: initializer expression cannot reference a mutable global
+ 0000020: error: OnGlobalGetExpr callback failed
+out/test/spec/data.wast:475: assert_invalid passed:
+ out/test/spec/data/data.58.wasm:0000013: error: global variable out of range: 0 (max 0)
0000013: error: OnGlobalGetExpr callback failed
-out/test/spec/data.wast:474: assert_invalid passed:
- out/test/spec/data/data.56.wasm:0000029: error: global variable out of range: 1 (max 1)
- 0000029: error: OnGlobalGetExpr callback failed
out/test/spec/data.wast:483: assert_invalid passed:
- out/test/spec/data/data.57.wasm:000002d: error: initializer expression cannot reference a mutable global
+ out/test/spec/data/data.59.wasm:0000029: error: global variable out of range: 1 (max 1)
+ 0000029: error: OnGlobalGetExpr callback failed
+out/test/spec/data.wast:492: assert_invalid passed:
+ out/test/spec/data/data.60.wasm:000002d: error: initializer expression cannot reference a mutable global
000002d: error: OnGlobalGetExpr callback failed
-58/58 tests passed.
+61/61 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/elem.txt b/test/spec/elem.txt
index e2422cc7..4c9358d8 100644
--- a/test/spec/elem.txt
+++ b/test/spec/elem.txt
@@ -1,67 +1,76 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/elem.wast
(;; STDOUT ;;;
-out/test/spec/elem.wast:321: assert_trap passed: out of bounds table access: table.init out of bounds
+out/test/spec/elem.wast:152: assert_invalid passed:
+ out/test/spec/elem/elem.9.wasm:0000026: error: initializer expression can only reference an imported global
+ 0000026: error: OnGlobalGetExpr callback failed
+out/test/spec/elem.wast:156: assert_invalid passed:
+ out/test/spec/elem/elem.10.wasm:0000026: error: initializer expression can only reference an imported global
+ 0000026: error: OnGlobalGetExpr callback failed
out/test/spec/elem.wast:331: assert_trap passed: out of bounds table access: table.init out of bounds
-out/test/spec/elem.wast:336: assert_invalid passed:
- out/test/spec/elem/elem.33.wasm:0000016: error: table variable out of range: 0 (max 0)
- 0000016: error: BeginElemSegment callback failed
+out/test/spec/elem.wast:341: assert_trap passed: out of bounds table access: table.init out of bounds
out/test/spec/elem.wast:346: assert_invalid passed:
- out/test/spec/elem/elem.34.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [i64]
+ out/test/spec/elem/elem.35.wasm:0000016: error: table variable out of range: 0 (max 0)
+ 0000016: error: BeginElemSegment callback failed
+out/test/spec/elem.wast:356: assert_invalid passed:
+ out/test/spec/elem/elem.36.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [i64]
0000015: error: EndElemSegmentInitExpr callback failed
-out/test/spec/elem.wast:354: assert_invalid passed:
- out/test/spec/elem/elem.35.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [funcref]
+out/test/spec/elem.wast:364: assert_invalid passed:
+ out/test/spec/elem/elem.37.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [funcref]
0000015: error: EndElemSegmentInitExpr callback failed
-out/test/spec/elem.wast:362: assert_invalid passed:
- out/test/spec/elem/elem.36.wasm:0000012: error: type mismatch in initializer expression, expected [i32] but got []
+out/test/spec/elem.wast:372: assert_invalid passed:
+ out/test/spec/elem/elem.38.wasm:0000012: error: type mismatch in initializer expression, expected [i32] but got []
0000013: error: EndElemSegmentInitExpr callback failed
-out/test/spec/elem.wast:370: assert_invalid passed:
- out/test/spec/elem/elem.37.wasm:0000016: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/elem.wast:380: assert_invalid passed:
+ out/test/spec/elem/elem.39.wasm:0000016: error: type mismatch at end of initializer expression, expected [] but got [i32]
0000017: error: EndElemSegmentInitExpr callback failed
-out/test/spec/elem.wast:378: assert_invalid passed:
- out/test/spec/elem/elem.38.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
- 000002d: error: EndElemSegmentInitExpr callback failed
-out/test/spec/elem.wast:387: assert_invalid passed:
- out/test/spec/elem/elem.39.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/elem.wast:388: assert_invalid passed:
+ out/test/spec/elem/elem.40.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002d: error: EndElemSegmentInitExpr callback failed
out/test/spec/elem.wast:397: assert_invalid passed:
- out/test/spec/elem/elem.40.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
+ out/test/spec/elem/elem.41.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
+ 000002d: error: EndElemSegmentInitExpr callback failed
+out/test/spec/elem.wast:407: assert_invalid passed:
+ out/test/spec/elem/elem.42.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
0000015: error: OnUnaryExpr callback failed
-out/test/spec/elem.wast:405: assert_invalid passed:
- out/test/spec/elem/elem.41.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/elem.wast:415: assert_invalid passed:
+ out/test/spec/elem/elem.43.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
0000013: error: OnNopExpr callback failed
-out/test/spec/elem.wast:413: assert_invalid passed:
- out/test/spec/elem/elem.42.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/elem.wast:423: assert_invalid passed:
+ out/test/spec/elem/elem.44.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
0000013: error: OnNopExpr callback failed
-out/test/spec/elem.wast:421: assert_invalid passed:
- out/test/spec/elem/elem.43.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/elem.wast:431: assert_invalid passed:
+ out/test/spec/elem/elem.45.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: nop
0000015: error: OnNopExpr callback failed
-out/test/spec/elem.wast:435: assert_invalid passed:
- out/test/spec/elem/elem.44.wasm:0000014: error: global variable out of range: 0 (max 0)
+out/test/spec/elem.wast:439: assert_invalid passed:
+ out/test/spec/elem/elem.46.wasm:0000021: error: initializer expression cannot reference a mutable global
+ 0000021: error: OnGlobalGetExpr callback failed
+out/test/spec/elem.wast:448: assert_invalid passed:
+ out/test/spec/elem/elem.47.wasm:0000014: error: global variable out of range: 0 (max 0)
0000014: error: OnGlobalGetExpr callback failed
-out/test/spec/elem.wast:443: assert_invalid passed:
- out/test/spec/elem/elem.45.wasm:000002a: error: global variable out of range: 1 (max 1)
+out/test/spec/elem.wast:456: assert_invalid passed:
+ out/test/spec/elem/elem.48.wasm:000002a: error: global variable out of range: 1 (max 1)
000002a: error: OnGlobalGetExpr callback failed
-out/test/spec/elem.wast:452: assert_invalid passed:
- out/test/spec/elem/elem.46.wasm:000002e: error: initializer expression cannot reference a mutable global
+out/test/spec/elem.wast:465: assert_invalid passed:
+ out/test/spec/elem/elem.49.wasm:000002e: error: initializer expression cannot reference a mutable global
000002e: error: OnGlobalGetExpr callback failed
-out/test/spec/elem.wast:463: assert_invalid passed:
- out/test/spec/elem/elem.47.wasm:0000018: error: type mismatch at elem expression. got externref, expected funcref
+out/test/spec/elem.wast:476: assert_invalid passed:
+ out/test/spec/elem/elem.50.wasm:0000018: error: type mismatch at elem expression. got externref, expected funcref
0000018: error: OnElemSegmentElemExpr_RefNull callback failed
-out/test/spec/elem.wast:471: assert_invalid passed:
+out/test/spec/elem.wast:484: assert_invalid passed:
0000019: error: expected END opcode after element expression
-out/test/spec/elem.wast:479: assert_invalid passed:
+out/test/spec/elem.wast:492: assert_invalid passed:
0000017: error: expected ref.null or ref.func in passive element segment
0000018: error: expected END opcode after element expression
-out/test/spec/elem.wast:487: assert_invalid passed:
+out/test/spec/elem.wast:500: assert_invalid passed:
0000017: error: expected ref.null or ref.func in passive element segment
0000018: error: expected END opcode after element expression
-out/test/spec/elem.wast:495: assert_invalid passed:
+out/test/spec/elem.wast:508: assert_invalid passed:
0000022: error: expected ref.null or ref.func in passive element segment
0000023: error: expected END opcode after element expression
-out/test/spec/elem.wast:504: assert_invalid passed:
+out/test/spec/elem.wast:517: assert_invalid passed:
0000017: error: expected ref.null or ref.func in passive element segment
0000018: error: expected END opcode after element expression
-out/test/spec/elem.wast:561: assert_trap passed: uninitialized table element
-73/73 tests passed.
+out/test/spec/elem.wast:574: assert_trap passed: uninitialized table element
+76/76 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/exception-handling/binary.txt b/test/spec/exception-handling/binary.txt
index 42c4ed2c..97e7c7b7 100644
--- a/test/spec/exception-handling/binary.txt
+++ b/test/spec/exception-handling/binary.txt
@@ -68,219 +68,219 @@ out/test/spec/exception-handling/binary.wast:51: assert_malformed passed:
000000a: error: invalid section code: 129
out/test/spec/exception-handling/binary.wast:52: assert_malformed passed:
000000a: error: invalid section code: 255
-out/test/spec/exception-handling/binary.wast:165: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:210: assert_malformed passed:
000000c: error: unexpected type form (got 0xe0)
-out/test/spec/exception-handling/binary.wast:178: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:223: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:188: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:233: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:198: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:243: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:209: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:254: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:219: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:264: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:231: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:276: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:239: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:284: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:249: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:294: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:259: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:304: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:269: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:314: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:279: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:324: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:290: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:335: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:300: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:345: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:310: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:355: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:320: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:365: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:331: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:376: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:341: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:386: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:351: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:396: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:361: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:406: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:373: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:418: assert_malformed passed:
000001b: error: function body must end with END opcode
-out/test/spec/exception-handling/binary.wast:394: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:439: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/exception-handling/binary.wast:410: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:455: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/exception-handling/binary.wast:430: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:475: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:438: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:483: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/exception-handling/binary.wast:457: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:502: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/exception-handling/binary.wast:476: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:521: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/exception-handling/binary.wast:495: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:540: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/exception-handling/binary.wast:516: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:561: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:526: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:571: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:537: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:582: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:547: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:592: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:559: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:604: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:567: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:612: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/exception-handling/binary.wast:575: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:620: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/exception-handling/binary.wast:594: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:639: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/exception-handling/binary.wast:613: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:658: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/exception-handling/binary.wast:631: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:676: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/exception-handling/binary.wast:650: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:695: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/exception-handling/binary.wast:669: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:714: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/exception-handling/binary.wast:688: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:733: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/exception-handling/binary.wast:707: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:752: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/exception-handling/binary.wast:729: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:774: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:739: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:784: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:749: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:794: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:759: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:804: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/exception-handling/binary.wast:770: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:815: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:780: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:825: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:790: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:835: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:800: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:845: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/exception-handling/binary.wast:812: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:857: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/exception-handling/binary.wast:832: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:877: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/exception-handling/binary.wast:852: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:897: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/exception-handling/binary.wast:871: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:916: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/exception-handling/binary.wast:890: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:935: assert_malformed passed:
0000020: error: memory.grow reserved value must be 0
-out/test/spec/exception-handling/binary.wast:910: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:955: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/exception-handling/binary.wast:929: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:974: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/exception-handling/binary.wast:948: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:993: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/exception-handling/binary.wast:966: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1011: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/exception-handling/binary.wast:984: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1029: assert_malformed passed:
000001e: error: memory.size reserved value must be 0
-out/test/spec/exception-handling/binary.wast:1003: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1048: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/exception-handling/binary.wast:1020: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1065: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/exception-handling/binary.wast:1037: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1082: assert_malformed passed:
000001c: error: local count must be < 0x10000000
-out/test/spec/exception-handling/binary.wast:1053: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1098: assert_malformed passed:
0000030: error: local count must be < 0x10000000
-out/test/spec/exception-handling/binary.wast:1087: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1132: assert_malformed passed:
0000013: error: function signature count != function body count
-out/test/spec/exception-handling/binary.wast:1097: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1142: assert_malformed passed:
000000b: error: function signature count != function body count
-out/test/spec/exception-handling/binary.wast:1106: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1151: assert_malformed passed:
0000016: error: function signature count != function body count
-out/test/spec/exception-handling/binary.wast:1117: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1162: assert_malformed passed:
0000015: error: function signature count != function body count
-out/test/spec/exception-handling/binary.wast:1140: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1185: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/exception-handling/binary.wast:1150: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1195: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/exception-handling/binary.wast:1160: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1205: assert_malformed passed:
0000024: error: memory.init requires data count section
-out/test/spec/exception-handling/binary.wast:1182: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1227: assert_malformed passed:
000001e: error: data.drop requires data count section
-out/test/spec/exception-handling/binary.wast:1201: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1246: assert_malformed passed:
0000024: error: expected ref.null or ref.func in passive element segment
0000025: error: expected END opcode after element expression
-out/test/spec/exception-handling/binary.wast:1227: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1272: assert_malformed passed:
0000022: error: table elem type must be a reference type
-out/test/spec/exception-handling/binary.wast:1308: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1353: assert_malformed passed:
000000a: error: invalid section size: extends past end
-out/test/spec/exception-handling/binary.wast:1319: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1364: assert_malformed passed:
000000e: error: unfinished section (expected end: 0x11)
-out/test/spec/exception-handling/binary.wast:1338: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1383: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/exception-handling/binary.wast:1348: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1393: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/exception-handling/binary.wast:1359: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1404: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/exception-handling/binary.wast:1369: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1414: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/exception-handling/binary.wast:1380: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1425: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/exception-handling/binary.wast:1390: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1435: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/exception-handling/binary.wast:1403: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1448: assert_malformed passed:
0000027: error: unable to read u32 leb128: string length
-out/test/spec/exception-handling/binary.wast:1422: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1467: assert_malformed passed:
000002b: error: unfinished section (expected end: 0x40)
-out/test/spec/exception-handling/binary.wast:1453: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1498: assert_malformed passed:
000000b: error: invalid table count 1, only 0 bytes left in section
-out/test/spec/exception-handling/binary.wast:1463: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1508: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/exception-handling/binary.wast:1472: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1517: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/exception-handling/binary.wast:1482: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1527: assert_malformed passed:
000000d: error: malformed table limits flag: 129
-out/test/spec/exception-handling/binary.wast:1500: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1545: assert_malformed passed:
000000b: error: invalid memory count 1, only 0 bytes left in section
-out/test/spec/exception-handling/binary.wast:1510: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1555: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/exception-handling/binary.wast:1518: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1563: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/exception-handling/binary.wast:1527: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1572: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/exception-handling/binary.wast:1536: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1581: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/exception-handling/binary.wast:1553: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1598: assert_malformed passed:
0000010: error: unable to read i32 leb128: global type
-out/test/spec/exception-handling/binary.wast:1564: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1609: assert_malformed passed:
0000010: error: unfinished section (expected end: 0x15)
-out/test/spec/exception-handling/binary.wast:1587: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1632: assert_malformed passed:
000001b: error: unable to read u32 leb128: string length
-out/test/spec/exception-handling/binary.wast:1608: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1653: assert_malformed passed:
000001b: error: unfinished section (expected end: 0x20)
-out/test/spec/exception-handling/binary.wast:1642: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1687: assert_malformed passed:
0000021: error: unable to read u32 leb128: elem segment flags
-out/test/spec/exception-handling/binary.wast:1658: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1703: assert_malformed passed:
0000024: error: unable to read u32 leb128: elem count
-out/test/spec/exception-handling/binary.wast:1675: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1720: assert_malformed passed:
0000021: error: unfinished section (expected end: 0x27)
-out/test/spec/exception-handling/binary.wast:1701: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1746: assert_malformed passed:
0000016: error: unable to read u32 leb128: data segment flags
-out/test/spec/exception-handling/binary.wast:1714: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1759: assert_malformed passed:
0000016: error: unfinished section (expected end: 0x1c)
-out/test/spec/exception-handling/binary.wast:1727: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1772: assert_malformed passed:
0000015: error: unable to read data: data segment data
-out/test/spec/exception-handling/binary.wast:1741: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1786: assert_malformed passed:
000001a: error: unfinished section (expected end: 0x1b)
-out/test/spec/exception-handling/binary.wast:1772: assert_malformed passed:
- out/test/spec/exception-handling/binary/binary.169.wasm:0000025: error: function type variable out of range: 11 (max 1)
+out/test/spec/exception-handling/binary.wast:1817: assert_malformed passed:
+ out/test/spec/exception-handling/binary/binary.174.wasm:0000025: error: function type variable out of range: 11 (max 1)
0000025: error: OnBlockExpr callback failed
-out/test/spec/exception-handling/binary.wast:1807: assert_malformed passed:
+out/test/spec/exception-handling/binary.wast:1852: assert_malformed passed:
0000017: error: multiple Start sections
-172/172 tests passed.
+177/177 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/extended-const/data.txt b/test/spec/extended-const/data.txt
index 984e8b1d..c2efcd8a 100644
--- a/test/spec/extended-const/data.txt
+++ b/test/spec/extended-const/data.txt
@@ -2,62 +2,71 @@
;;; STDIN_FILE: third_party/testsuite/proposals/extended-const/data.wast
;;; ARGS*: --enable-extended-const
(;; STDOUT ;;;
-out/test/spec/extended-const/data.wast:325: assert_invalid passed:
- out/test/spec/extended-const/data/data.43.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/extended-const/data.wast:85: assert_invalid passed:
+ out/test/spec/extended-const/data/data.9.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/data.wast:89: assert_invalid passed:
+ out/test/spec/extended-const/data/data.10.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/data.wast:331: assert_invalid passed:
+ out/test/spec/extended-const/data/data.45.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:333: assert_invalid passed:
- out/test/spec/extended-const/data/data.44.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/extended-const/data.wast:339: assert_invalid passed:
+ out/test/spec/extended-const/data/data.46.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:346: assert_invalid passed:
- out/test/spec/extended-const/data/data.45.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/extended-const/data.wast:352: assert_invalid passed:
+ out/test/spec/extended-const/data/data.47.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:357: assert_invalid passed:
- out/test/spec/extended-const/data/data.46.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/extended-const/data.wast:363: assert_invalid passed:
+ out/test/spec/extended-const/data/data.48.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:369: assert_invalid passed:
- out/test/spec/extended-const/data/data.47.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/extended-const/data.wast:375: assert_invalid passed:
+ out/test/spec/extended-const/data/data.49.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:391: assert_invalid passed:
- out/test/spec/extended-const/data/data.48.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/extended-const/data.wast:397: assert_invalid passed:
+ out/test/spec/extended-const/data/data.50.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/extended-const/data.wast:410: assert_invalid passed:
- out/test/spec/extended-const/data/data.49.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
+out/test/spec/extended-const/data.wast:416: assert_invalid passed:
+ out/test/spec/extended-const/data/data.51.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:418: assert_invalid passed:
- out/test/spec/extended-const/data/data.50.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
+out/test/spec/extended-const/data.wast:424: assert_invalid passed:
+ out/test/spec/extended-const/data/data.52.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:426: assert_invalid passed:
- out/test/spec/extended-const/data/data.51.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
+out/test/spec/extended-const/data.wast:432: assert_invalid passed:
+ out/test/spec/extended-const/data/data.53.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
0000012: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:434: assert_invalid passed:
- out/test/spec/extended-const/data/data.52.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/extended-const/data.wast:440: assert_invalid passed:
+ out/test/spec/extended-const/data/data.54.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
0000016: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:442: assert_invalid passed:
- out/test/spec/extended-const/data/data.53.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/extended-const/data.wast:448: assert_invalid passed:
+ out/test/spec/extended-const/data/data.55.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:451: assert_invalid passed:
- out/test/spec/extended-const/data/data.54.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/extended-const/data.wast:457: assert_invalid passed:
+ out/test/spec/extended-const/data/data.56.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/extended-const/data.wast:460: assert_invalid passed:
- out/test/spec/extended-const/data/data.55.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
+out/test/spec/extended-const/data.wast:466: assert_invalid passed:
+ out/test/spec/extended-const/data/data.57.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
0000014: error: OnUnaryExpr callback failed
-out/test/spec/extended-const/data.wast:468: assert_invalid passed:
- out/test/spec/extended-const/data/data.56.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/data.wast:474: assert_invalid passed:
+ out/test/spec/extended-const/data/data.58.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/extended-const/data.wast:476: assert_invalid passed:
- out/test/spec/extended-const/data/data.57.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/data.wast:482: assert_invalid passed:
+ out/test/spec/extended-const/data/data.59.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/extended-const/data.wast:484: assert_invalid passed:
- out/test/spec/extended-const/data/data.58.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/data.wast:490: assert_invalid passed:
+ out/test/spec/extended-const/data/data.60.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
0000014: error: OnNopExpr callback failed
out/test/spec/extended-const/data.wast:498: assert_invalid passed:
- out/test/spec/extended-const/data/data.59.wasm:0000013: error: global variable out of range: 0 (max 0)
+ out/test/spec/extended-const/data/data.61.wasm:0000020: error: initializer expression cannot reference a mutable global
+ 0000020: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/data.wast:507: assert_invalid passed:
+ out/test/spec/extended-const/data/data.62.wasm:0000013: error: global variable out of range: 0 (max 0)
0000013: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/data.wast:506: assert_invalid passed:
- out/test/spec/extended-const/data/data.60.wasm:0000029: error: global variable out of range: 1 (max 1)
- 0000029: error: OnGlobalGetExpr callback failed
out/test/spec/extended-const/data.wast:515: assert_invalid passed:
- out/test/spec/extended-const/data/data.61.wasm:000002d: error: initializer expression cannot reference a mutable global
+ out/test/spec/extended-const/data/data.63.wasm:0000029: error: global variable out of range: 1 (max 1)
+ 0000029: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/data.wast:524: assert_invalid passed:
+ out/test/spec/extended-const/data/data.64.wasm:000002d: error: initializer expression cannot reference a mutable global
000002d: error: OnGlobalGetExpr callback failed
-62/62 tests passed.
+65/65 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/extended-const/elem.txt b/test/spec/extended-const/elem.txt
index ba2a0452..187ec491 100644
--- a/test/spec/extended-const/elem.txt
+++ b/test/spec/extended-const/elem.txt
@@ -2,67 +2,76 @@
;;; STDIN_FILE: third_party/testsuite/proposals/extended-const/elem.wast
;;; ARGS*: --enable-extended-const
(;; STDOUT ;;;
-out/test/spec/extended-const/elem.wast:321: assert_trap passed: out of bounds table access: table.init out of bounds
+out/test/spec/extended-const/elem.wast:152: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.9.wasm:0000026: error: initializer expression can only reference an imported global
+ 0000026: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/elem.wast:156: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.10.wasm:0000026: error: initializer expression can only reference an imported global
+ 0000026: error: OnGlobalGetExpr callback failed
out/test/spec/extended-const/elem.wast:331: assert_trap passed: out of bounds table access: table.init out of bounds
-out/test/spec/extended-const/elem.wast:336: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.33.wasm:0000016: error: table variable out of range: 0 (max 0)
- 0000016: error: BeginElemSegment callback failed
+out/test/spec/extended-const/elem.wast:341: assert_trap passed: out of bounds table access: table.init out of bounds
out/test/spec/extended-const/elem.wast:346: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.34.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [i64]
+ out/test/spec/extended-const/elem/elem.35.wasm:0000016: error: table variable out of range: 0 (max 0)
+ 0000016: error: BeginElemSegment callback failed
+out/test/spec/extended-const/elem.wast:356: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.36.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [i64]
0000015: error: EndElemSegmentInitExpr callback failed
-out/test/spec/extended-const/elem.wast:354: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.35.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [funcref]
+out/test/spec/extended-const/elem.wast:364: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.37.wasm:0000014: error: type mismatch in initializer expression, expected [i32] but got [funcref]
0000015: error: EndElemSegmentInitExpr callback failed
-out/test/spec/extended-const/elem.wast:362: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.36.wasm:0000012: error: type mismatch in initializer expression, expected [i32] but got []
+out/test/spec/extended-const/elem.wast:372: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.38.wasm:0000012: error: type mismatch in initializer expression, expected [i32] but got []
0000013: error: EndElemSegmentInitExpr callback failed
-out/test/spec/extended-const/elem.wast:370: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.37.wasm:0000016: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/extended-const/elem.wast:380: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.39.wasm:0000016: error: type mismatch at end of initializer expression, expected [] but got [i32]
0000017: error: EndElemSegmentInitExpr callback failed
-out/test/spec/extended-const/elem.wast:378: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.38.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
- 000002d: error: EndElemSegmentInitExpr callback failed
-out/test/spec/extended-const/elem.wast:387: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.39.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/extended-const/elem.wast:388: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.40.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002d: error: EndElemSegmentInitExpr callback failed
out/test/spec/extended-const/elem.wast:397: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.40.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
+ out/test/spec/extended-const/elem/elem.41.wasm:000002c: error: type mismatch at end of initializer expression, expected [] but got [i32]
+ 000002d: error: EndElemSegmentInitExpr callback failed
+out/test/spec/extended-const/elem.wast:407: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.42.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
0000015: error: OnUnaryExpr callback failed
-out/test/spec/extended-const/elem.wast:405: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.41.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/elem.wast:415: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.43.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
0000013: error: OnNopExpr callback failed
-out/test/spec/extended-const/elem.wast:413: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.42.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/elem.wast:423: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.44.wasm:0000013: error: invalid initializer: instruction not valid in initializer expression: nop
0000013: error: OnNopExpr callback failed
-out/test/spec/extended-const/elem.wast:421: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.43.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/extended-const/elem.wast:431: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.45.wasm:0000015: error: invalid initializer: instruction not valid in initializer expression: nop
0000015: error: OnNopExpr callback failed
-out/test/spec/extended-const/elem.wast:435: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.44.wasm:0000014: error: global variable out of range: 0 (max 0)
+out/test/spec/extended-const/elem.wast:439: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.46.wasm:0000021: error: initializer expression cannot reference a mutable global
+ 0000021: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/elem.wast:448: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.47.wasm:0000014: error: global variable out of range: 0 (max 0)
0000014: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/elem.wast:443: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.45.wasm:000002a: error: global variable out of range: 1 (max 1)
+out/test/spec/extended-const/elem.wast:456: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.48.wasm:000002a: error: global variable out of range: 1 (max 1)
000002a: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/elem.wast:452: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.46.wasm:000002e: error: initializer expression cannot reference a mutable global
+out/test/spec/extended-const/elem.wast:465: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.49.wasm:000002e: error: initializer expression cannot reference a mutable global
000002e: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/elem.wast:463: assert_invalid passed:
- out/test/spec/extended-const/elem/elem.47.wasm:0000018: error: type mismatch at elem expression. got externref, expected funcref
+out/test/spec/extended-const/elem.wast:476: assert_invalid passed:
+ out/test/spec/extended-const/elem/elem.50.wasm:0000018: error: type mismatch at elem expression. got externref, expected funcref
0000018: error: OnElemSegmentElemExpr_RefNull callback failed
-out/test/spec/extended-const/elem.wast:471: assert_invalid passed:
+out/test/spec/extended-const/elem.wast:484: assert_invalid passed:
0000019: error: expected END opcode after element expression
-out/test/spec/extended-const/elem.wast:479: assert_invalid passed:
+out/test/spec/extended-const/elem.wast:492: assert_invalid passed:
0000017: error: expected ref.null or ref.func in passive element segment
0000018: error: expected END opcode after element expression
-out/test/spec/extended-const/elem.wast:487: assert_invalid passed:
+out/test/spec/extended-const/elem.wast:500: assert_invalid passed:
0000017: error: expected ref.null or ref.func in passive element segment
0000018: error: expected END opcode after element expression
-out/test/spec/extended-const/elem.wast:495: assert_invalid passed:
+out/test/spec/extended-const/elem.wast:508: assert_invalid passed:
0000022: error: expected ref.null or ref.func in passive element segment
0000023: error: expected END opcode after element expression
-out/test/spec/extended-const/elem.wast:504: assert_invalid passed:
+out/test/spec/extended-const/elem.wast:517: assert_invalid passed:
0000022: error: expected ref.null or ref.func in passive element segment
0000023: error: expected END opcode after element expression
-out/test/spec/extended-const/elem.wast:562: assert_trap passed: uninitialized table element
-73/73 tests passed.
+out/test/spec/extended-const/elem.wast:575: assert_trap passed: uninitialized table element
+76/76 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/extended-const/global.txt b/test/spec/extended-const/global.txt
index 6d3640ff..66fc9198 100644
--- a/test/spec/extended-const/global.txt
+++ b/test/spec/extended-const/global.txt
@@ -49,93 +49,99 @@ out/test/spec/extended-const/global.wast:359: assert_invalid passed:
out/test/spec/extended-const/global/global.17.wasm:000000f: error: initializer expression can only reference an imported global
000000f: error: OnGlobalGetExpr callback failed
out/test/spec/extended-const/global.wast:364: assert_invalid passed:
- out/test/spec/extended-const/global/global.18.wasm:000000f: error: global variable out of range: 1 (max 1)
+ out/test/spec/extended-const/global/global.18.wasm:0000014: error: initializer expression can only reference an imported global
+ 0000014: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/global.wast:368: assert_invalid passed:
+ out/test/spec/extended-const/global/global.19.wasm:0000014: error: initializer expression can only reference an imported global
+ 0000014: error: OnGlobalGetExpr callback failed
+out/test/spec/extended-const/global.wast:373: assert_invalid passed:
+ out/test/spec/extended-const/global/global.20.wasm:000000f: error: global variable out of range: 1 (max 1)
000000f: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:369: assert_invalid passed:
- out/test/spec/extended-const/global/global.19.wasm:0000025: error: global variable out of range: 2 (max 2)
+out/test/spec/extended-const/global.wast:378: assert_invalid passed:
+ out/test/spec/extended-const/global/global.21.wasm:0000025: error: global variable out of range: 2 (max 2)
0000025: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:374: assert_invalid passed:
- out/test/spec/extended-const/global/global.20.wasm:0000029: error: initializer expression cannot reference a mutable global
+out/test/spec/extended-const/global.wast:383: assert_invalid passed:
+ out/test/spec/extended-const/global/global.22.wasm:0000029: error: initializer expression cannot reference a mutable global
0000029: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:382: assert_malformed passed:
+out/test/spec/extended-const/global.wast:391: assert_malformed passed:
0000026: error: global mutability must be 0 or 1
-out/test/spec/extended-const/global.wast:395: assert_malformed passed:
+out/test/spec/extended-const/global.wast:404: assert_malformed passed:
0000026: error: global mutability must be 0 or 1
-out/test/spec/extended-const/global.wast:412: assert_malformed passed:
+out/test/spec/extended-const/global.wast:421: assert_malformed passed:
0000011: error: global mutability must be 0 or 1
-out/test/spec/extended-const/global.wast:424: assert_malformed passed:
+out/test/spec/extended-const/global.wast:433: assert_malformed passed:
0000011: error: global mutability must be 0 or 1
-out/test/spec/extended-const/global.wast:438: assert_invalid passed:
- out/test/spec/extended-const/global/global.27.wasm:000001a: error: global variable out of range: 0 (max 0)
+out/test/spec/extended-const/global.wast:447: assert_invalid passed:
+ out/test/spec/extended-const/global/global.29.wasm:000001a: error: global variable out of range: 0 (max 0)
000001a: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:443: assert_invalid passed:
- out/test/spec/extended-const/global/global.28.wasm:0000022: error: global variable out of range: 1 (max 1)
+out/test/spec/extended-const/global.wast:452: assert_invalid passed:
+ out/test/spec/extended-const/global/global.30.wasm:0000022: error: global variable out of range: 1 (max 1)
0000022: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:451: assert_invalid passed:
- out/test/spec/extended-const/global/global.29.wasm:0000034: error: global variable out of range: 1 (max 1)
+out/test/spec/extended-const/global.wast:460: assert_invalid passed:
+ out/test/spec/extended-const/global/global.31.wasm:0000034: error: global variable out of range: 1 (max 1)
0000034: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:459: assert_invalid passed:
- out/test/spec/extended-const/global/global.30.wasm:000003c: error: global variable out of range: 2 (max 2)
+out/test/spec/extended-const/global.wast:468: assert_invalid passed:
+ out/test/spec/extended-const/global/global.32.wasm:000003c: error: global variable out of range: 2 (max 2)
000003c: error: OnGlobalGetExpr callback failed
-out/test/spec/extended-const/global.wast:469: assert_invalid passed:
- out/test/spec/extended-const/global/global.31.wasm:000001b: error: global variable out of range: 0 (max 0)
+out/test/spec/extended-const/global.wast:478: assert_invalid passed:
+ out/test/spec/extended-const/global/global.33.wasm:000001b: error: global variable out of range: 0 (max 0)
000001b: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:474: assert_invalid passed:
- out/test/spec/extended-const/global/global.32.wasm:0000023: error: global variable out of range: 1 (max 1)
+out/test/spec/extended-const/global.wast:483: assert_invalid passed:
+ out/test/spec/extended-const/global/global.34.wasm:0000023: error: global variable out of range: 1 (max 1)
0000023: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:482: assert_invalid passed:
- out/test/spec/extended-const/global/global.33.wasm:0000035: error: global variable out of range: 1 (max 1)
+out/test/spec/extended-const/global.wast:491: assert_invalid passed:
+ out/test/spec/extended-const/global/global.35.wasm:0000035: error: global variable out of range: 1 (max 1)
0000035: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:490: assert_invalid passed:
- out/test/spec/extended-const/global/global.34.wasm:000003d: error: global variable out of range: 2 (max 2)
+out/test/spec/extended-const/global.wast:499: assert_invalid passed:
+ out/test/spec/extended-const/global/global.36.wasm:000003d: error: global variable out of range: 2 (max 2)
000003d: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:500: assert_invalid passed:
- out/test/spec/extended-const/global/global.35.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
- 0000021: error: OnGlobalSetExpr callback failed
out/test/spec/extended-const/global.wast:509: assert_invalid passed:
- out/test/spec/extended-const/global/global.36.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/extended-const/global/global.37.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ 0000021: error: OnGlobalSetExpr callback failed
+out/test/spec/extended-const/global.wast:518: assert_invalid passed:
+ out/test/spec/extended-const/global/global.38.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:519: assert_invalid passed:
- out/test/spec/extended-const/global/global.37.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:528: assert_invalid passed:
+ out/test/spec/extended-const/global/global.39.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:529: assert_invalid passed:
- out/test/spec/extended-const/global/global.38.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:538: assert_invalid passed:
+ out/test/spec/extended-const/global/global.40.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
0000027: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:539: assert_invalid passed:
- out/test/spec/extended-const/global/global.39.wasm:000002a: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:548: assert_invalid passed:
+ out/test/spec/extended-const/global/global.41.wasm:000002a: error: type mismatch in global.set, expected [i32] but got []
000002a: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:549: assert_invalid passed:
- out/test/spec/extended-const/global/global.40.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:558: assert_invalid passed:
+ out/test/spec/extended-const/global/global.42.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:559: assert_invalid passed:
- out/test/spec/extended-const/global/global.41.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:568: assert_invalid passed:
+ out/test/spec/extended-const/global/global.43.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:569: assert_invalid passed:
- out/test/spec/extended-const/global/global.42.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:578: assert_invalid passed:
+ out/test/spec/extended-const/global/global.44.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:579: assert_invalid passed:
- out/test/spec/extended-const/global/global.43.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
- 0000021: error: OnGlobalSetExpr callback failed
out/test/spec/extended-const/global.wast:588: assert_invalid passed:
- out/test/spec/extended-const/global/global.44.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/extended-const/global/global.45.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
0000021: error: OnGlobalSetExpr callback failed
out/test/spec/extended-const/global.wast:597: assert_invalid passed:
- out/test/spec/extended-const/global/global.45.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/extended-const/global/global.46.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ 0000021: error: OnGlobalSetExpr callback failed
+out/test/spec/extended-const/global.wast:606: assert_invalid passed:
+ out/test/spec/extended-const/global/global.47.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
0000027: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:607: assert_invalid passed:
- out/test/spec/extended-const/global/global.46.wasm:000003e: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/extended-const/global.wast:616: assert_invalid passed:
+ out/test/spec/extended-const/global/global.48.wasm:000003e: error: type mismatch in global.set, expected [i32] but got []
000003e: error: OnGlobalSetExpr callback failed
-out/test/spec/extended-const/global.wast:625: assert_malformed passed:
- out/test/spec/extended-const/global/global.47.wat:1:33: error: redefinition of global "$foo"
+out/test/spec/extended-const/global.wast:634: assert_malformed passed:
+ out/test/spec/extended-const/global/global.49.wat:1:33: error: redefinition of global "$foo"
(global $foo i32 (i32.const 0))(global $foo i32 (i32.const 0))
^^^^^^
-out/test/spec/extended-const/global.wast:629: assert_malformed passed:
- out/test/spec/extended-const/global/global.48.wat:1:34: error: redefinition of global "$foo"
+out/test/spec/extended-const/global.wast:638: assert_malformed passed:
+ out/test/spec/extended-const/global/global.50.wat:1:34: error: redefinition of global "$foo"
(import "" "" (global $foo i32))(global $foo i32 (i32.const 0))
^^^^^^
-out/test/spec/extended-const/global.wast:633: assert_malformed passed:
- out/test/spec/extended-const/global/global.49.wat:1:34: error: redefinition of global "$foo"
+out/test/spec/extended-const/global.wast:642: assert_malformed passed:
+ out/test/spec/extended-const/global/global.51.wat:1:34: error: redefinition of global "$foo"
(import "" "" (global $foo i32))(import "" "" (global $foo i32))
^^^^^^
-112/112 tests passed.
+114/114 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/global.txt b/test/spec/global.txt
index 67e198f9..12fc1335 100644
--- a/test/spec/global.txt
+++ b/test/spec/global.txt
@@ -48,93 +48,99 @@ out/test/spec/global.wast:347: assert_invalid passed:
out/test/spec/global/global.17.wasm:000000f: error: initializer expression can only reference an imported global
000000f: error: OnGlobalGetExpr callback failed
out/test/spec/global.wast:352: assert_invalid passed:
- out/test/spec/global/global.18.wasm:000000f: error: global variable out of range: 1 (max 1)
+ out/test/spec/global/global.18.wasm:0000014: error: initializer expression can only reference an imported global
+ 0000014: error: OnGlobalGetExpr callback failed
+out/test/spec/global.wast:356: assert_invalid passed:
+ out/test/spec/global/global.19.wasm:0000014: error: initializer expression can only reference an imported global
+ 0000014: error: OnGlobalGetExpr callback failed
+out/test/spec/global.wast:361: assert_invalid passed:
+ out/test/spec/global/global.20.wasm:000000f: error: global variable out of range: 1 (max 1)
000000f: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:357: assert_invalid passed:
- out/test/spec/global/global.19.wasm:0000025: error: global variable out of range: 2 (max 2)
+out/test/spec/global.wast:366: assert_invalid passed:
+ out/test/spec/global/global.21.wasm:0000025: error: global variable out of range: 2 (max 2)
0000025: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:362: assert_invalid passed:
- out/test/spec/global/global.20.wasm:0000029: error: initializer expression cannot reference a mutable global
+out/test/spec/global.wast:371: assert_invalid passed:
+ out/test/spec/global/global.22.wasm:0000029: error: initializer expression cannot reference a mutable global
0000029: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:370: assert_malformed passed:
+out/test/spec/global.wast:379: assert_malformed passed:
0000026: error: global mutability must be 0 or 1
-out/test/spec/global.wast:383: assert_malformed passed:
+out/test/spec/global.wast:392: assert_malformed passed:
0000026: error: global mutability must be 0 or 1
-out/test/spec/global.wast:400: assert_malformed passed:
+out/test/spec/global.wast:409: assert_malformed passed:
0000011: error: global mutability must be 0 or 1
-out/test/spec/global.wast:412: assert_malformed passed:
+out/test/spec/global.wast:421: assert_malformed passed:
0000011: error: global mutability must be 0 or 1
-out/test/spec/global.wast:426: assert_invalid passed:
- out/test/spec/global/global.27.wasm:000001a: error: global variable out of range: 0 (max 0)
+out/test/spec/global.wast:435: assert_invalid passed:
+ out/test/spec/global/global.29.wasm:000001a: error: global variable out of range: 0 (max 0)
000001a: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:431: assert_invalid passed:
- out/test/spec/global/global.28.wasm:0000022: error: global variable out of range: 1 (max 1)
+out/test/spec/global.wast:440: assert_invalid passed:
+ out/test/spec/global/global.30.wasm:0000022: error: global variable out of range: 1 (max 1)
0000022: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:439: assert_invalid passed:
- out/test/spec/global/global.29.wasm:0000034: error: global variable out of range: 1 (max 1)
+out/test/spec/global.wast:448: assert_invalid passed:
+ out/test/spec/global/global.31.wasm:0000034: error: global variable out of range: 1 (max 1)
0000034: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:447: assert_invalid passed:
- out/test/spec/global/global.30.wasm:000003c: error: global variable out of range: 2 (max 2)
+out/test/spec/global.wast:456: assert_invalid passed:
+ out/test/spec/global/global.32.wasm:000003c: error: global variable out of range: 2 (max 2)
000003c: error: OnGlobalGetExpr callback failed
-out/test/spec/global.wast:457: assert_invalid passed:
- out/test/spec/global/global.31.wasm:000001b: error: global variable out of range: 0 (max 0)
+out/test/spec/global.wast:466: assert_invalid passed:
+ out/test/spec/global/global.33.wasm:000001b: error: global variable out of range: 0 (max 0)
000001b: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:462: assert_invalid passed:
- out/test/spec/global/global.32.wasm:0000023: error: global variable out of range: 1 (max 1)
+out/test/spec/global.wast:471: assert_invalid passed:
+ out/test/spec/global/global.34.wasm:0000023: error: global variable out of range: 1 (max 1)
0000023: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:470: assert_invalid passed:
- out/test/spec/global/global.33.wasm:0000035: error: global variable out of range: 1 (max 1)
+out/test/spec/global.wast:479: assert_invalid passed:
+ out/test/spec/global/global.35.wasm:0000035: error: global variable out of range: 1 (max 1)
0000035: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:478: assert_invalid passed:
- out/test/spec/global/global.34.wasm:000003d: error: global variable out of range: 2 (max 2)
+out/test/spec/global.wast:487: assert_invalid passed:
+ out/test/spec/global/global.36.wasm:000003d: error: global variable out of range: 2 (max 2)
000003d: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:488: assert_invalid passed:
- out/test/spec/global/global.35.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
- 0000021: error: OnGlobalSetExpr callback failed
out/test/spec/global.wast:497: assert_invalid passed:
- out/test/spec/global/global.36.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/global/global.37.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ 0000021: error: OnGlobalSetExpr callback failed
+out/test/spec/global.wast:506: assert_invalid passed:
+ out/test/spec/global/global.38.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:507: assert_invalid passed:
- out/test/spec/global/global.37.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:516: assert_invalid passed:
+ out/test/spec/global/global.39.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:517: assert_invalid passed:
- out/test/spec/global/global.38.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:526: assert_invalid passed:
+ out/test/spec/global/global.40.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
0000027: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:527: assert_invalid passed:
- out/test/spec/global/global.39.wasm:000002a: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:536: assert_invalid passed:
+ out/test/spec/global/global.41.wasm:000002a: error: type mismatch in global.set, expected [i32] but got []
000002a: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:537: assert_invalid passed:
- out/test/spec/global/global.40.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:546: assert_invalid passed:
+ out/test/spec/global/global.42.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:547: assert_invalid passed:
- out/test/spec/global/global.41.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:556: assert_invalid passed:
+ out/test/spec/global/global.43.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:557: assert_invalid passed:
- out/test/spec/global/global.42.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:566: assert_invalid passed:
+ out/test/spec/global/global.44.wasm:0000025: error: type mismatch in global.set, expected [i32] but got []
0000025: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:567: assert_invalid passed:
- out/test/spec/global/global.43.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
- 0000021: error: OnGlobalSetExpr callback failed
out/test/spec/global.wast:576: assert_invalid passed:
- out/test/spec/global/global.44.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/global/global.45.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
0000021: error: OnGlobalSetExpr callback failed
out/test/spec/global.wast:585: assert_invalid passed:
- out/test/spec/global/global.45.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
+ out/test/spec/global/global.46.wasm:0000021: error: type mismatch in global.set, expected [i32] but got []
+ 0000021: error: OnGlobalSetExpr callback failed
+out/test/spec/global.wast:594: assert_invalid passed:
+ out/test/spec/global/global.47.wasm:0000027: error: type mismatch in global.set, expected [i32] but got []
0000027: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:595: assert_invalid passed:
- out/test/spec/global/global.46.wasm:000003e: error: type mismatch in global.set, expected [i32] but got []
+out/test/spec/global.wast:604: assert_invalid passed:
+ out/test/spec/global/global.48.wasm:000003e: error: type mismatch in global.set, expected [i32] but got []
000003e: error: OnGlobalSetExpr callback failed
-out/test/spec/global.wast:613: assert_malformed passed:
- out/test/spec/global/global.47.wat:1:33: error: redefinition of global "$foo"
+out/test/spec/global.wast:622: assert_malformed passed:
+ out/test/spec/global/global.49.wat:1:33: error: redefinition of global "$foo"
(global $foo i32 (i32.const 0))(global $foo i32 (i32.const 0))
^^^^^^
-out/test/spec/global.wast:617: assert_malformed passed:
- out/test/spec/global/global.48.wat:1:34: error: redefinition of global "$foo"
+out/test/spec/global.wast:626: assert_malformed passed:
+ out/test/spec/global/global.50.wat:1:34: error: redefinition of global "$foo"
(import "" "" (global $foo i32))(global $foo i32 (i32.const 0))
^^^^^^
-out/test/spec/global.wast:621: assert_malformed passed:
- out/test/spec/global/global.49.wat:1:34: error: redefinition of global "$foo"
+out/test/spec/global.wast:630: assert_malformed passed:
+ out/test/spec/global/global.51.wat:1:34: error: redefinition of global "$foo"
(import "" "" (global $foo i32))(import "" "" (global $foo i32))
^^^^^^
-108/108 tests passed.
+110/110 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/multi-memory/binary.txt b/test/spec/multi-memory/binary.txt
index bb0b906e..c5ae51f6 100644
--- a/test/spec/multi-memory/binary.txt
+++ b/test/spec/multi-memory/binary.txt
@@ -68,199 +68,199 @@ out/test/spec/multi-memory/binary.wast:51: assert_malformed passed:
000000a: error: invalid section code: 129
out/test/spec/multi-memory/binary.wast:52: assert_malformed passed:
000000a: error: invalid section code: 255
-out/test/spec/multi-memory/binary.wast:165: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:210: assert_malformed passed:
000000c: error: unexpected type form (got 0xe0)
-out/test/spec/multi-memory/binary.wast:178: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:223: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:188: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:233: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:198: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:243: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:209: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:254: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:219: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:264: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:231: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:276: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:239: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:284: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:249: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:294: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:259: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:304: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:269: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:314: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:279: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:324: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:290: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:335: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:300: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:345: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:310: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:355: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:320: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:365: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:331: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:376: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:341: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:386: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:351: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:396: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:361: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:406: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:373: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:418: assert_malformed passed:
000001b: error: function body must end with END opcode
-out/test/spec/multi-memory/binary.wast:394: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:439: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/multi-memory/binary.wast:410: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:455: assert_malformed passed:
000001a: error: function body must end with END opcode
-out/test/spec/multi-memory/binary.wast:430: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:475: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:438: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:483: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/multi-memory/binary.wast:457: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:502: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/multi-memory/binary.wast:476: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:521: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/multi-memory/binary.wast:495: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:540: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/multi-memory/binary.wast:516: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:561: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:526: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:571: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:537: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:582: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:547: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:592: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:559: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:604: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:567: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:612: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
-out/test/spec/multi-memory/binary.wast:575: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:620: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/multi-memory/binary.wast:594: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:639: assert_malformed passed:
0000022: error: unable to read u32 leb128: load offset
-out/test/spec/multi-memory/binary.wast:613: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:658: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/multi-memory/binary.wast:631: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:676: assert_malformed passed:
0000021: error: unable to read u32 leb128: load alignment
-out/test/spec/multi-memory/binary.wast:650: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:695: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/multi-memory/binary.wast:669: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:714: assert_malformed passed:
0000023: error: unable to read u32 leb128: store alignment
-out/test/spec/multi-memory/binary.wast:688: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:733: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/multi-memory/binary.wast:707: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:752: assert_malformed passed:
0000024: error: unable to read u32 leb128: store offset
-out/test/spec/multi-memory/binary.wast:729: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:774: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:739: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:784: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:749: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:794: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:759: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:804: assert_malformed passed:
000000e: error: unable to read i32 leb128: i32.const value
-out/test/spec/multi-memory/binary.wast:770: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:815: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:780: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:825: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:790: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:835: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:800: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:845: assert_malformed passed:
000000e: error: unable to read i64 leb128: i64.const value
-out/test/spec/multi-memory/binary.wast:812: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:857: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/multi-memory/binary.wast:829: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:874: assert_malformed passed:
0000017: error: unable to read u32 leb128: local type count
-out/test/spec/multi-memory/binary.wast:846: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:891: assert_malformed passed:
000001c: error: local count must be < 0x10000000
-out/test/spec/multi-memory/binary.wast:862: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:907: assert_malformed passed:
0000030: error: local count must be < 0x10000000
-out/test/spec/multi-memory/binary.wast:896: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:941: assert_malformed passed:
0000013: error: function signature count != function body count
-out/test/spec/multi-memory/binary.wast:906: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:951: assert_malformed passed:
000000b: error: function signature count != function body count
-out/test/spec/multi-memory/binary.wast:915: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:960: assert_malformed passed:
0000016: error: function signature count != function body count
-out/test/spec/multi-memory/binary.wast:926: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:971: assert_malformed passed:
0000015: error: function signature count != function body count
-out/test/spec/multi-memory/binary.wast:949: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:994: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/multi-memory/binary.wast:959: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1004: assert_malformed passed:
000000e: error: data segment count does not equal count in DataCount section
-out/test/spec/multi-memory/binary.wast:969: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1014: assert_malformed passed:
0000024: error: memory.init requires data count section
-out/test/spec/multi-memory/binary.wast:991: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1036: assert_malformed passed:
000001e: error: data.drop requires data count section
-out/test/spec/multi-memory/binary.wast:1010: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1055: assert_malformed passed:
0000024: error: expected ref.null or ref.func in passive element segment
0000025: error: expected END opcode after element expression
-out/test/spec/multi-memory/binary.wast:1036: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1081: assert_malformed passed:
0000022: error: table elem type must be a reference type
-out/test/spec/multi-memory/binary.wast:1117: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1162: assert_malformed passed:
000000a: error: invalid section size: extends past end
-out/test/spec/multi-memory/binary.wast:1128: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1173: assert_malformed passed:
000000e: error: unfinished section (expected end: 0x11)
-out/test/spec/multi-memory/binary.wast:1147: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1192: assert_malformed passed:
000000e: error: invalid import tag kind: exceptions not allowed
-out/test/spec/multi-memory/binary.wast:1157: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1202: assert_malformed passed:
000000e: error: invalid import tag kind: exceptions not allowed
-out/test/spec/multi-memory/binary.wast:1168: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1213: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/multi-memory/binary.wast:1178: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1223: assert_malformed passed:
000000e: error: malformed import kind: 5
-out/test/spec/multi-memory/binary.wast:1189: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1234: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/multi-memory/binary.wast:1199: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1244: assert_malformed passed:
000000e: error: malformed import kind: 128
-out/test/spec/multi-memory/binary.wast:1212: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1257: assert_malformed passed:
0000027: error: unable to read u32 leb128: string length
-out/test/spec/multi-memory/binary.wast:1231: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1276: assert_malformed passed:
000002b: error: unfinished section (expected end: 0x40)
-out/test/spec/multi-memory/binary.wast:1262: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1307: assert_malformed passed:
000000b: error: invalid table count 1, only 0 bytes left in section
-out/test/spec/multi-memory/binary.wast:1272: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1317: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/multi-memory/binary.wast:1281: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1326: assert_malformed passed:
000000d: error: tables may not be shared
-out/test/spec/multi-memory/binary.wast:1291: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1336: assert_malformed passed:
000000d: error: malformed table limits flag: 129
-out/test/spec/multi-memory/binary.wast:1309: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1354: assert_malformed passed:
000000b: error: invalid memory count 1, only 0 bytes left in section
-out/test/spec/multi-memory/binary.wast:1319: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1364: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/multi-memory/binary.wast:1327: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1372: assert_malformed passed:
000000c: error: memory may not be shared: threads not allowed
-out/test/spec/multi-memory/binary.wast:1336: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1381: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/multi-memory/binary.wast:1345: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1390: assert_malformed passed:
000000c: error: malformed memory limits flag: 129
-out/test/spec/multi-memory/binary.wast:1362: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1407: assert_malformed passed:
0000010: error: unable to read i32 leb128: global type
-out/test/spec/multi-memory/binary.wast:1373: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1418: assert_malformed passed:
0000010: error: unfinished section (expected end: 0x15)
-out/test/spec/multi-memory/binary.wast:1396: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1441: assert_malformed passed:
000001b: error: unable to read u32 leb128: string length
-out/test/spec/multi-memory/binary.wast:1417: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1462: assert_malformed passed:
000001b: error: unfinished section (expected end: 0x20)
-out/test/spec/multi-memory/binary.wast:1451: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1496: assert_malformed passed:
0000021: error: unable to read u32 leb128: elem segment flags
-out/test/spec/multi-memory/binary.wast:1467: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1512: assert_malformed passed:
0000024: error: unable to read u32 leb128: elem count
-out/test/spec/multi-memory/binary.wast:1484: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1529: assert_malformed passed:
0000021: error: unfinished section (expected end: 0x27)
-out/test/spec/multi-memory/binary.wast:1510: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1555: assert_malformed passed:
0000016: error: unable to read u32 leb128: data segment flags
-out/test/spec/multi-memory/binary.wast:1523: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1568: assert_malformed passed:
0000016: error: unfinished section (expected end: 0x1c)
-out/test/spec/multi-memory/binary.wast:1536: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1581: assert_malformed passed:
0000015: error: unable to read data: data segment data
-out/test/spec/multi-memory/binary.wast:1550: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1595: assert_malformed passed:
000001a: error: unfinished section (expected end: 0x1b)
-out/test/spec/multi-memory/binary.wast:1581: assert_malformed passed:
- out/test/spec/multi-memory/binary/binary.159.wasm:0000025: error: function type variable out of range: 11 (max 1)
+out/test/spec/multi-memory/binary.wast:1626: assert_malformed passed:
+ out/test/spec/multi-memory/binary/binary.164.wasm:0000025: error: function type variable out of range: 11 (max 1)
0000025: error: OnBlockExpr callback failed
-out/test/spec/multi-memory/binary.wast:1616: assert_malformed passed:
+out/test/spec/multi-memory/binary.wast:1661: assert_malformed passed:
0000017: error: multiple Start sections
-162/162 tests passed.
+167/167 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/multi-memory/data.txt b/test/spec/multi-memory/data.txt
index 56c32fe0..39108a72 100644
--- a/test/spec/multi-memory/data.txt
+++ b/test/spec/multi-memory/data.txt
@@ -2,62 +2,71 @@
;;; STDIN_FILE: third_party/testsuite/proposals/multi-memory/data.wast
;;; ARGS*: --enable-multi-memory
(;; STDOUT ;;;
-out/test/spec/multi-memory/data.wast:294: assert_invalid passed:
- out/test/spec/multi-memory/data/data.39.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/multi-memory/data.wast:86: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.9.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/multi-memory/data.wast:90: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.10.wasm:000001b: error: initializer expression can only reference an imported global
+ 000001b: error: OnGlobalGetExpr callback failed
+out/test/spec/multi-memory/data.wast:300: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.41.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:302: assert_invalid passed:
- out/test/spec/multi-memory/data/data.40.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/multi-memory/data.wast:308: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.42.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:315: assert_invalid passed:
- out/test/spec/multi-memory/data/data.41.wasm:000000c: error: memory variable out of range: 0 (max 0)
+out/test/spec/multi-memory/data.wast:321: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.43.wasm:000000c: error: memory variable out of range: 0 (max 0)
000000c: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:326: assert_invalid passed:
- out/test/spec/multi-memory/data/data.42.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/multi-memory/data.wast:332: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.44.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:338: assert_invalid passed:
- out/test/spec/multi-memory/data/data.43.wasm:0000012: error: memory variable out of range: 1 (max 1)
+out/test/spec/multi-memory/data.wast:344: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.45.wasm:0000012: error: memory variable out of range: 1 (max 1)
0000012: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:360: assert_invalid passed:
- out/test/spec/multi-memory/data/data.44.wasm:000000d: error: memory variable out of range: 1 (max 0)
+out/test/spec/multi-memory/data.wast:366: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.46.wasm:000000d: error: memory variable out of range: 1 (max 0)
000000d: error: BeginDataSegment callback failed
-out/test/spec/multi-memory/data.wast:379: assert_invalid passed:
- out/test/spec/multi-memory/data/data.45.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
+out/test/spec/multi-memory/data.wast:385: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.47.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [i64]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:387: assert_invalid passed:
- out/test/spec/multi-memory/data/data.46.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
+out/test/spec/multi-memory/data.wast:393: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.48.wasm:0000013: error: type mismatch in initializer expression, expected [i32] but got [funcref]
0000014: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:395: assert_invalid passed:
- out/test/spec/multi-memory/data/data.47.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
+out/test/spec/multi-memory/data.wast:401: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.49.wasm:0000011: error: type mismatch in initializer expression, expected [i32] but got []
0000012: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:403: assert_invalid passed:
- out/test/spec/multi-memory/data/data.48.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/multi-memory/data.wast:409: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.50.wasm:0000015: error: type mismatch at end of initializer expression, expected [] but got [i32]
0000016: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:411: assert_invalid passed:
- out/test/spec/multi-memory/data/data.49.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/multi-memory/data.wast:417: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.51.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:420: assert_invalid passed:
- out/test/spec/multi-memory/data/data.50.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
+out/test/spec/multi-memory/data.wast:426: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.52.wasm:000002b: error: type mismatch at end of initializer expression, expected [] but got [i32]
000002c: error: EndDataSegmentInitExpr callback failed
-out/test/spec/multi-memory/data.wast:429: assert_invalid passed:
- out/test/spec/multi-memory/data/data.51.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
+out/test/spec/multi-memory/data.wast:435: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.53.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: i32.ctz
0000014: error: OnUnaryExpr callback failed
-out/test/spec/multi-memory/data.wast:437: assert_invalid passed:
- out/test/spec/multi-memory/data/data.52.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/multi-memory/data.wast:443: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.54.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/multi-memory/data.wast:445: assert_invalid passed:
- out/test/spec/multi-memory/data/data.53.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/multi-memory/data.wast:451: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.55.wasm:0000012: error: invalid initializer: instruction not valid in initializer expression: nop
0000012: error: OnNopExpr callback failed
-out/test/spec/multi-memory/data.wast:453: assert_invalid passed:
- out/test/spec/multi-memory/data/data.54.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
+out/test/spec/multi-memory/data.wast:459: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.56.wasm:0000014: error: invalid initializer: instruction not valid in initializer expression: nop
0000014: error: OnNopExpr callback failed
out/test/spec/multi-memory/data.wast:467: assert_invalid passed:
- out/test/spec/multi-memory/data/data.55.wasm:0000013: error: global variable out of range: 0 (max 0)
+ out/test/spec/multi-memory/data/data.57.wasm:0000020: error: initializer expression cannot reference a mutable global
+ 0000020: error: OnGlobalGetExpr callback failed
+out/test/spec/multi-memory/data.wast:476: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.58.wasm:0000013: error: global variable out of range: 0 (max 0)
0000013: error: OnGlobalGetExpr callback failed
-out/test/spec/multi-memory/data.wast:475: assert_invalid passed:
- out/test/spec/multi-memory/data/data.56.wasm:0000029: error: global variable out of range: 1 (max 1)
- 0000029: error: OnGlobalGetExpr callback failed
out/test/spec/multi-memory/data.wast:484: assert_invalid passed:
- out/test/spec/multi-memory/data/data.57.wasm:000002d: error: initializer expression cannot reference a mutable global
+ out/test/spec/multi-memory/data/data.59.wasm:0000029: error: global variable out of range: 1 (max 1)
+ 0000029: error: OnGlobalGetExpr callback failed
+out/test/spec/multi-memory/data.wast:493: assert_invalid passed:
+ out/test/spec/multi-memory/data/data.60.wasm:000002d: error: initializer expression cannot reference a mutable global
000002d: error: OnGlobalGetExpr callback failed
-58/58 tests passed.
+61/61 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/unreached-valid.txt b/test/spec/unreached-valid.txt
index 13ddb458..9a67d141 100644
--- a/test/spec/unreached-valid.txt
+++ b/test/spec/unreached-valid.txt
@@ -5,5 +5,6 @@ out/test/spec/unreached-valid.wast:42: assert_trap passed: unreachable executed
out/test/spec/unreached-valid.wast:43: assert_trap passed: unreachable executed
out/test/spec/unreached-valid.wast:44: assert_trap passed: unreachable executed
out/test/spec/unreached-valid.wast:45: assert_trap passed: unreachable executed
-6/6 tests passed.
+out/test/spec/unreached-valid.wast:63: assert_trap passed: unreachable executed
+7/7 tests passed.
;;; STDOUT ;;)
diff --git a/third_party/testsuite b/third_party/testsuite
-Subproject d42da0117f7a93c6a9127e2b9eec64749152c4c
+Subproject 4f77306bb63151631d84f58dedf67958eb9911b