summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rwxr-xr-xscripts/fuzz-wasm2wat.sh2
-rwxr-xr-xscripts/fuzz-wat2wasm.sh2
-rw-r--r--src/feature.cc4
-rw-r--r--src/feature.def2
-rw-r--r--src/opcode.def2
-rw-r--r--test/binary/bad-call-indirect-reserved.txt2
-rw-r--r--test/binary/bad-returncallindirect-reserved.txt4
-rw-r--r--test/dump/reference-types.txt1
-rw-r--r--test/dump/relocations.txt17
-rw-r--r--test/dump/table-multi.txt2
-rwxr-xr-xtest/gen-spec-wast.py4
-rw-r--r--test/help/spectest-interp.txt2
-rw-r--r--test/help/wasm-interp.txt2
-rw-r--r--test/help/wasm-opcodecnt.txt2
-rw-r--r--test/help/wasm-validate.txt2
-rw-r--r--test/help/wasm2wat.txt2
-rw-r--r--test/help/wast2json.txt2
-rw-r--r--test/help/wat-desugar.txt2
-rw-r--r--test/help/wat2wasm.txt2
-rw-r--r--test/interp/reference-types.txt1
-rw-r--r--test/parse/expr/bad-select-multi.txt5
-rw-r--r--test/parse/expr/bulk-memory-disabled.txt2
-rw-r--r--test/parse/expr/reference-types-call-indirect.txt1
-rw-r--r--test/parse/expr/reference-types-named.txt1
-rw-r--r--test/parse/expr/reference-types.txt1
-rw-r--r--test/parse/expr/table-get.txt1
-rw-r--r--test/parse/expr/table-grow.txt1
-rw-r--r--test/parse/expr/table-set.txt1
-rw-r--r--test/parse/module/bad-table-no-offset.txt2
-rw-r--r--test/parse/module/bad-table-too-many.txt3
-rw-r--r--test/parse/module/global.txt1
-rw-r--r--test/parse/module/reference-types-disabled.txt11
-rw-r--r--test/roundtrip/elem-declare.txt2
-rw-r--r--test/roundtrip/elem-nonzero-table.txt2
-rw-r--r--test/roundtrip/fold-reference-types.txt2
-rw-r--r--test/roundtrip/select-type.txt2
-rw-r--r--test/roundtrip/table-copy-index.txt2
-rw-r--r--test/roundtrip/table-import-externref.txt2
-rw-r--r--test/roundtrip/table-init-index.txt2
-rwxr-xr-xtest/run-roundtrip.py6
-rwxr-xr-xtest/run-spec-wasm2c.py1
-rw-r--r--test/spec/binary.txt1
-rw-r--r--test/spec/bulk-memory-operations/binary.txt1
-rw-r--r--test/spec/bulk-memory-operations/imports.txt1
-rw-r--r--test/spec/imports.txt1
-rw-r--r--test/spec/memory64/binary.txt2
-rw-r--r--test/spec/reference-types/binary-leb128.txt1
-rw-r--r--test/spec/reference-types/binary.txt1
-rw-r--r--test/spec/reference-types/br_table.txt1
-rw-r--r--test/spec/reference-types/bulk.txt1
-rw-r--r--test/spec/reference-types/call_indirect.txt1
-rw-r--r--test/spec/reference-types/custom.txt1
-rw-r--r--test/spec/reference-types/data.txt1
-rw-r--r--test/spec/reference-types/elem.txt1
-rw-r--r--test/spec/reference-types/exports.txt1
-rw-r--r--test/spec/reference-types/global.txt1
-rw-r--r--test/spec/reference-types/imports.txt1
-rw-r--r--test/spec/reference-types/linking.txt1
-rw-r--r--test/spec/reference-types/memory_copy.txt1
-rw-r--r--test/spec/reference-types/memory_fill.txt1
-rw-r--r--test/spec/reference-types/memory_grow.txt1
-rw-r--r--test/spec/reference-types/memory_init.txt1
-rw-r--r--test/spec/reference-types/ref_func.txt1
-rw-r--r--test/spec/reference-types/ref_is_null.txt1
-rw-r--r--test/spec/reference-types/ref_null.txt1
-rw-r--r--test/spec/reference-types/select.txt1
-rw-r--r--test/spec/reference-types/table-sub.txt1
-rw-r--r--test/spec/reference-types/table.txt1
-rw-r--r--test/spec/reference-types/table_copy.txt1
-rw-r--r--test/spec/reference-types/table_fill.txt1
-rw-r--r--test/spec/reference-types/table_get.txt1
-rw-r--r--test/spec/reference-types/table_grow.txt1
-rw-r--r--test/spec/reference-types/table_init.txt1
-rw-r--r--test/spec/reference-types/table_set.txt1
-rw-r--r--test/spec/reference-types/table_size.txt1
-rw-r--r--test/spec/reference-types/unreached-invalid.txt1
-rw-r--r--test/spec/table.txt1
-rw-r--r--test/typecheck/bad-reference-types-no-table.txt5
-rw-r--r--test/typecheck/if-anyref.txt1
-rwxr-xr-xtest/update-spec-tests.py1
81 files changed, 63 insertions, 93 deletions
diff --git a/README.md b/README.md
index 9e6ffaa5..41f3ead7 100644
--- a/README.md
+++ b/README.md
@@ -55,7 +55,7 @@ Wabt has been compiled to JavaScript via emscripten. Some of the functionality i
| [multi-value][] | `--disable-multi-value` | ✓ | ✓ | ✓ | ✓ | ✓ |
| [tail-call][] | `--enable-tail-call` | | ✓ | ✓ | ✓ | ✓ |
| [bulk memory][] | `--disable-bulk-memory` | ✓ | ✓ | ✓ | ✓ | ✓ |
-| [reference types][] | `--enable-reference-types` | | ✓ | ✓ | ✓ | ✓ |
+| [reference types][] | `--disable-reference-types` | ✓ | ✓ | ✓ | ✓ | ✓ |
| [annotations][] | `--enable-annotations` | | | ✓ | | |
| [memory64][] | `--enable-memory64` | | | | | |
diff --git a/scripts/fuzz-wasm2wat.sh b/scripts/fuzz-wasm2wat.sh
index f2bb2d0b..668d275d 100755
--- a/scripts/fuzz-wasm2wat.sh
+++ b/scripts/fuzz-wasm2wat.sh
@@ -21,6 +21,6 @@ set -o errexit
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
ROOT_DIR="$(dirname "${SCRIPT_DIR}")"
-ENABLE="--enable-except --enable-sat --enable-sign --enable-thread --enable-multi --enable-tail --enable-ref"
+ENABLE="--enable-except --enable-sat --enable-sign --enable-thread --enable-multi --enable-tail"
${FUZZ_BIN_DIR}/afl-fuzz -i fuzz-in/wasm/ -o fuzz-out -- out/gcc-fuzz/Debug/wasm2wat @@ ${ENABLE}
diff --git a/scripts/fuzz-wat2wasm.sh b/scripts/fuzz-wat2wasm.sh
index 729fc0e9..deb080f7 100755
--- a/scripts/fuzz-wat2wasm.sh
+++ b/scripts/fuzz-wat2wasm.sh
@@ -21,6 +21,6 @@ set -o errexit
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
ROOT_DIR="$(dirname "${SCRIPT_DIR}")"
-ENABLE="--enable-except --enable-sat --enable-sign --enable-thread --enable-multi --enable-tail --enable-ref"
+ENABLE="--enable-except --enable-sat --enable-sign --enable-thread --enable-multi --enable-tail"
${FUZZ_BIN_DIR}/afl-fuzz -x fuzz-in/wast.dict -i fuzz-in/wast/ -o fuzz-out -- out/gcc-fuzz/Debug/wat2wasm @@ ${ENABLE}
diff --git a/src/feature.cc b/src/feature.cc
index 9d7878e1..9a8cb7a4 100644
--- a/src/feature.cc
+++ b/src/feature.cc
@@ -48,8 +48,8 @@ void Features::UpdateDependencies() {
}
// Reference types requires bulk memory.
- if (reference_types_enabled_) {
- bulk_memory_enabled_ = true;
+ if (!bulk_memory_enabled_) {
+ reference_types_enabled_ = false;
}
}
diff --git a/src/feature.def b/src/feature.def
index cf237dbf..238e8518 100644
--- a/src/feature.def
+++ b/src/feature.def
@@ -32,7 +32,7 @@ WABT_FEATURE(function_references, "function-references", false, "Typed fun
WABT_FEATURE(multi_value, "multi-value", true, "Multi-value")
WABT_FEATURE(tail_call, "tail-call", false, "Tail-call support")
WABT_FEATURE(bulk_memory, "bulk-memory", true, "Bulk-memory operations")
-WABT_FEATURE(reference_types, "reference-types", false, "Reference types (externref)")
+WABT_FEATURE(reference_types, "reference-types", true, "Reference types (externref)")
WABT_FEATURE(annotations, "annotations", false, "Custom annotation syntax")
WABT_FEATURE(gc, "gc", false, "Garbage collection")
WABT_FEATURE(memory64, "memory64", false, "64-bit memory")
diff --git a/src/opcode.def b/src/opcode.def
index 7251aea7..611afd57 100644
--- a/src/opcode.def
+++ b/src/opcode.def
@@ -251,7 +251,7 @@ WABT_OPCODE(___, I32, I32, I32, 0, 0xfc, 0x0c, TableInit, "table.init", "")
WABT_OPCODE(___, ___, ___, ___, 0, 0xfc, 0x0d, ElemDrop, "elem.drop", "")
WABT_OPCODE(___, I32, I32, I32, 0, 0xfc, 0x0e, TableCopy, "table.copy", "")
-/* Reference types (--enable-reference-types) */
+/* Reference types */
WABT_OPCODE(___, I32, ___, ___, 0, 0, 0x25, TableGet, "table.get", "")
WABT_OPCODE(___, I32, ___, ___, 0, 0, 0x26, TableSet, "table.set", "")
WABT_OPCODE(___, ___, I32, ___, 0, 0xfc, 0x0f, TableGrow, "table.grow", "")
diff --git a/test/binary/bad-call-indirect-reserved.txt b/test/binary/bad-call-indirect-reserved.txt
index 70119477..fdfe63f4 100644
--- a/test/binary/bad-call-indirect-reserved.txt
+++ b/test/binary/bad-call-indirect-reserved.txt
@@ -1,4 +1,6 @@
;;; TOOL: run-gen-wasm-bad
+;;; ARGS1: --disable-reference-types
+;;; ARGS2: --disable-reference-types
magic
version
section(TYPE) { count[1] function params[0] results[0]}
diff --git a/test/binary/bad-returncallindirect-reserved.txt b/test/binary/bad-returncallindirect-reserved.txt
index b55a5a6a..8a4175cc 100644
--- a/test/binary/bad-returncallindirect-reserved.txt
+++ b/test/binary/bad-returncallindirect-reserved.txt
@@ -1,6 +1,6 @@
;;; TOOL: run-gen-wasm-bad
-;;; ARGS1: --enable-tail-call
-;;; ARGS2: --enable-tail-call
+;;; ARGS1: --disable-reference-types --enable-tail-call
+;;; ARGS2: --disable-reference-types --enable-tail-call
magic
version
section(TYPE) { count[1] function params[0] results[0]}
diff --git a/test/dump/reference-types.txt b/test/dump/reference-types.txt
index 5d2b49d5..9ccba7e8 100644
--- a/test/dump/reference-types.txt
+++ b/test/dump/reference-types.txt
@@ -1,5 +1,4 @@
;;; TOOL: run-objdump
-;;; ARGS0: --enable-reference-types
;;; ARGS1: -x
(module
diff --git a/test/dump/relocations.txt b/test/dump/relocations.txt
index eb2c8443..97fe671f 100644
--- a/test/dump/relocations.txt
+++ b/test/dump/relocations.txt
@@ -28,9 +28,9 @@ Sections:
Global start=0x00000048 end=0x0000004e (size=0x00000006) count: 1
Export start=0x00000050 end=0x00000055 (size=0x00000005) count: 1
Elem start=0x00000057 end=0x0000005e (size=0x00000007) count: 1
- Code start=0x00000060 end=0x00000082 (size=0x00000022) count: 1
- Custom start=0x00000084 end=0x000000a5 (size=0x00000021) "linking"
- Custom start=0x000000a7 end=0x000000c0 (size=0x00000019) "reloc.Code"
+ Code start=0x00000060 end=0x00000086 (size=0x00000026) count: 1
+ Custom start=0x00000088 end=0x000000a9 (size=0x00000021) "linking"
+ Custom start=0x000000ab end=0x000000c7 (size=0x0000001c) "reloc.Code"
Section Details:
@@ -53,7 +53,7 @@ Elem[1]:
- segment[0] flags=0 table=0 count=1 - init i32=0
- elem[0] = func[1] <__extern.bar>
Code[1]:
- - func[2] size=32 <f>
+ - func[2] size=36 <f>
Custom:
- name: "linking"
- symbol table [count=5]
@@ -64,11 +64,12 @@ Custom:
- 4: G <g> global=0 [ binding=global vis=default ]
Custom:
- name: "reloc.Code"
- - relocations for section: 7 (Code) [4]
+ - relocations for section: 7 (Code) [5]
- R_WASM_GLOBAL_INDEX_LEB offset=0x000004(file=0x000064) symbol=4 <g>
- R_WASM_FUNCTION_INDEX_LEB offset=0x00000a(file=0x00006a) symbol=2 <f>
- R_WASM_FUNCTION_INDEX_LEB offset=0x000010(file=0x000070) symbol=0 <__extern.foo>
- R_WASM_TYPE_INDEX_LEB offset=0x00001b(file=0x00007b) type=2
+ - R_WASM_TABLE_NUMBER_LEB offset=0x000020(file=0x000080) symbol=3 <>
Code Disassembly:
@@ -81,7 +82,9 @@ Code Disassembly:
000070: R_WASM_FUNCTION_INDEX_LEB 0 <__extern.foo>
000075: 41 d2 09 | i32.const 1234
000078: 41 00 | i32.const 0
- 00007a: 11 82 80 80 80 00 00 | call_indirect 2 0
+ 00007a: 11 82 80 80 80 00 80 80 80 | call_indirect 2 0
+ 000083: 80 00 |
00007b: R_WASM_TYPE_INDEX_LEB 2
- 000081: 0b | end
+ 000085: 0b | end
+ 000080: R_WASM_TABLE_NUMBER_LEB 3 <>
;;; STDOUT ;;)
diff --git a/test/dump/table-multi.txt b/test/dump/table-multi.txt
index b57f43c1..0f9e7a03 100644
--- a/test/dump/table-multi.txt
+++ b/test/dump/table-multi.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-objdump
-;;; ARGS0: --enable-reference-types -v
+;;; ARGS0: -v
;;; ARGS1: -x
(module
(func (param i32))
diff --git a/test/gen-spec-wast.py b/test/gen-spec-wast.py
index b506c592..05eb2f43 100755
--- a/test/gen-spec-wast.py
+++ b/test/gen-spec-wast.py
@@ -246,7 +246,7 @@ def main(args):
parser.add_argument('--enable-sign-extension', action='store_true')
parser.add_argument('--enable-multi-value', action='store_true')
parser.add_argument('--enable-tail-call', action='store_true')
- parser.add_argument('--enable-reference-types', action='store_true')
+ parser.add_argument('--disable-reference-types', action='store_true')
parser.add_argument('--enable-memory64', action='store_true')
options = parser.parse_args(args)
@@ -262,7 +262,7 @@ def main(args):
'--enable-sign-extension': options.enable_sign_extension,
'--enable-threads': options.enable_threads,
'--enable-tail-call': options.enable_tail_call,
- '--enable-reference-types': options.enable_reference_types,
+ '--disable-reference-types': options.disable_reference_types,
'--enable-memory64': options.enable_memory64,
})
diff --git a/test/help/spectest-interp.txt b/test/help/spectest-interp.txt
index 40061906..db37eec6 100644
--- a/test/help/spectest-interp.txt
+++ b/test/help/spectest-interp.txt
@@ -23,7 +23,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wasm-interp.txt b/test/help/wasm-interp.txt
index 890e2f76..762a0113 100644
--- a/test/help/wasm-interp.txt
+++ b/test/help/wasm-interp.txt
@@ -34,7 +34,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wasm-opcodecnt.txt b/test/help/wasm-opcodecnt.txt
index 9de30f5c..6274d83d 100644
--- a/test/help/wasm-opcodecnt.txt
+++ b/test/help/wasm-opcodecnt.txt
@@ -24,7 +24,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wasm-validate.txt b/test/help/wasm-validate.txt
index 26c0de80..35e3f0ef 100644
--- a/test/help/wasm-validate.txt
+++ b/test/help/wasm-validate.txt
@@ -23,7 +23,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wasm2wat.txt b/test/help/wasm2wat.txt
index 3f4b6357..f60fc3a3 100644
--- a/test/help/wasm2wat.txt
+++ b/test/help/wasm2wat.txt
@@ -29,7 +29,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wast2json.txt b/test/help/wast2json.txt
index 47a52aa4..07b2df59 100644
--- a/test/help/wast2json.txt
+++ b/test/help/wast2json.txt
@@ -26,7 +26,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wat-desugar.txt b/test/help/wat-desugar.txt
index 2fe1435f..3d427f39 100644
--- a/test/help/wat-desugar.txt
+++ b/test/help/wat-desugar.txt
@@ -33,7 +33,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/help/wat2wasm.txt b/test/help/wat2wasm.txt
index d93e3a30..d8aa797c 100644
--- a/test/help/wat2wasm.txt
+++ b/test/help/wat2wasm.txt
@@ -33,7 +33,7 @@ options:
--disable-multi-value Disable Multi-value
--enable-tail-call Enable Tail-call support
--disable-bulk-memory Disable Bulk-memory operations
- --enable-reference-types Enable Reference types (externref)
+ --disable-reference-types Disable Reference types (externref)
--enable-annotations Enable Custom annotation syntax
--enable-gc Enable Garbage collection
--enable-memory64 Enable 64-bit memory
diff --git a/test/interp/reference-types.txt b/test/interp/reference-types.txt
index 34c13529..d2d13549 100644
--- a/test/interp/reference-types.txt
+++ b/test/interp/reference-types.txt
@@ -1,5 +1,4 @@
;;; TOOL: run-interp
-;;; ARGS*: --enable-reference-types
(module
(table $t_func 1 funcref)
diff --git a/test/parse/expr/bad-select-multi.txt b/test/parse/expr/bad-select-multi.txt
index e9e0b34d..9b737a15 100644
--- a/test/parse/expr/bad-select-multi.txt
+++ b/test/parse/expr/bad-select-multi.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS*: --enable-reference-types
;;; ERROR: 1
(module
(func
@@ -12,10 +11,10 @@
unreachable
))
(;; STDERR ;;;
-out/test/parse/expr/bad-select-multi.txt:11:5: error: invalid arity in select instruction: 2.
+out/test/parse/expr/bad-select-multi.txt:10:5: error: invalid arity in select instruction: 2.
select (result i32 i32)
^^^^^^
-out/test/parse/expr/bad-select-multi.txt:11:5: error: type mismatch in function, expected [] but got [... i32, i32, i32, i32]
+out/test/parse/expr/bad-select-multi.txt:10:5: error: type mismatch in function, expected [] but got [... i32, i32, i32, i32]
select (result i32 i32)
^^^^^^
;;; STDERR ;;)
diff --git a/test/parse/expr/bulk-memory-disabled.txt b/test/parse/expr/bulk-memory-disabled.txt
index 6f5cd10b..efbbbe74 100644
--- a/test/parse/expr/bulk-memory-disabled.txt
+++ b/test/parse/expr/bulk-memory-disabled.txt
@@ -1,5 +1,5 @@
;;; TOOL: wat2wasm
-;;; ARGS*: --disable-bulk-memory
+;;; ARGS*: --disable-reference-types --disable-bulk-memory
;;; ERROR: 1
(module
diff --git a/test/parse/expr/reference-types-call-indirect.txt b/test/parse/expr/reference-types-call-indirect.txt
index 42363266..93b3460e 100644
--- a/test/parse/expr/reference-types-call-indirect.txt
+++ b/test/parse/expr/reference-types-call-indirect.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(table $foo 1 anyfunc)
diff --git a/test/parse/expr/reference-types-named.txt b/test/parse/expr/reference-types-named.txt
index 5a2d5d1b..ed11a6f7 100644
--- a/test/parse/expr/reference-types-named.txt
+++ b/test/parse/expr/reference-types-named.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(table $foo 1 externref)
diff --git a/test/parse/expr/reference-types.txt b/test/parse/expr/reference-types.txt
index b452df42..b5a8790a 100644
--- a/test/parse/expr/reference-types.txt
+++ b/test/parse/expr/reference-types.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(table $foo 1 externref)
diff --git a/test/parse/expr/table-get.txt b/test/parse/expr/table-get.txt
index a1d3074a..f2895a65 100644
--- a/test/parse/expr/table-get.txt
+++ b/test/parse/expr/table-get.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(func (result externref)
i32.const 0
diff --git a/test/parse/expr/table-grow.txt b/test/parse/expr/table-grow.txt
index f40e9092..4b8e40fc 100644
--- a/test/parse/expr/table-grow.txt
+++ b/test/parse/expr/table-grow.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(func (result i32)
ref.null extern
diff --git a/test/parse/expr/table-set.txt b/test/parse/expr/table-set.txt
index 16f8b917..21cdc7d9 100644
--- a/test/parse/expr/table-set.txt
+++ b/test/parse/expr/table-set.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(func (param externref)
i32.const 0
diff --git a/test/parse/module/bad-table-no-offset.txt b/test/parse/module/bad-table-no-offset.txt
index 3c68cda2..2f7e6340 100644
--- a/test/parse/module/bad-table-no-offset.txt
+++ b/test/parse/module/bad-table-no-offset.txt
@@ -1,5 +1,5 @@
;;; TOOL: wat2wasm
-;;; ARGS: --disable-bulk-memory
+;;; ARGS: --disable-reference-types --disable-bulk-memory
;;; ERROR: 1
(module
(table 1 anyfunc)
diff --git a/test/parse/module/bad-table-too-many.txt b/test/parse/module/bad-table-too-many.txt
index df984a26..b1ff2409 100644
--- a/test/parse/module/bad-table-too-many.txt
+++ b/test/parse/module/bad-table-too-many.txt
@@ -1,11 +1,12 @@
;;; TOOL: wat2wasm
+;;; ARGS: --disable-reference-types
;;; ERROR: 1
(module
(func (param i32))
(table anyfunc (elem 0))
(table anyfunc (elem 0)))
(;; STDERR ;;;
-out/test/parse/module/bad-table-too-many.txt:6:4: error: only one table allowed
+out/test/parse/module/bad-table-too-many.txt:7:4: error: only one table allowed
(table anyfunc (elem 0)))
^^^^^
;;; STDERR ;;)
diff --git a/test/parse/module/global.txt b/test/parse/module/global.txt
index 2578131c..021824eb 100644
--- a/test/parse/module/global.txt
+++ b/test/parse/module/global.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(import "foo" "i32_global" (global i32))
(import "foo" "i64_global" (global i64))
diff --git a/test/parse/module/reference-types-disabled.txt b/test/parse/module/reference-types-disabled.txt
index e4ba2736..36e52fb6 100644
--- a/test/parse/module/reference-types-disabled.txt
+++ b/test/parse/module/reference-types-disabled.txt
@@ -1,4 +1,5 @@
;;; TOOL: wat2wasm
+;;; ARGS: --disable-reference-types
;;; ERROR: 1
(module
@@ -11,19 +12,19 @@
)
)
(;; STDERR ;;;
-out/test/parse/module/reference-types-disabled.txt:5:15: error: value type not allowed: externref
+out/test/parse/module/reference-types-disabled.txt:6:15: error: value type not allowed: externref
(table $t 1 externref)
^^^^^^^^^
-out/test/parse/module/reference-types-disabled.txt:9:5: error: opcode not allowed: table.get
+out/test/parse/module/reference-types-disabled.txt:10:5: error: opcode not allowed: table.get
table.get $t
^^^^^^^^^
-out/test/parse/module/reference-types-disabled.txt:10:5: error: opcode not allowed: table.set
+out/test/parse/module/reference-types-disabled.txt:11:5: error: opcode not allowed: table.set
table.set $t
^^^^^^^^^
-out/test/parse/module/reference-types-disabled.txt:9:15: error: undefined table variable "$t"
+out/test/parse/module/reference-types-disabled.txt:10:15: error: undefined table variable "$t"
table.get $t
^^
-out/test/parse/module/reference-types-disabled.txt:10:15: error: undefined table variable "$t"
+out/test/parse/module/reference-types-disabled.txt:11:15: error: undefined table variable "$t"
table.set $t
^^
;;; STDERR ;;)
diff --git a/test/roundtrip/elem-declare.txt b/test/roundtrip/elem-declare.txt
index 5a58f184..0dbd1362 100644
--- a/test/roundtrip/elem-declare.txt
+++ b/test/roundtrip/elem-declare.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(table 2 funcref)
(elem declare funcref (ref.func $f) (ref.null func))
diff --git a/test/roundtrip/elem-nonzero-table.txt b/test/roundtrip/elem-nonzero-table.txt
index 11b503de..bd8831df 100644
--- a/test/roundtrip/elem-nonzero-table.txt
+++ b/test/roundtrip/elem-nonzero-table.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(table 1 funcref)
(table 1 funcref)
diff --git a/test/roundtrip/fold-reference-types.txt b/test/roundtrip/fold-reference-types.txt
index 4e0a08cd..8e39c2b3 100644
--- a/test/roundtrip/fold-reference-types.txt
+++ b/test/roundtrip/fold-reference-types.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --fold-exprs --enable-reference-types
+;;; ARGS: --stdout --fold-exprs
(module
(table $t 1 externref)
diff --git a/test/roundtrip/select-type.txt b/test/roundtrip/select-type.txt
index be36e5e0..bded1f3d 100644
--- a/test/roundtrip/select-type.txt
+++ b/test/roundtrip/select-type.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(func
unreachable
diff --git a/test/roundtrip/table-copy-index.txt b/test/roundtrip/table-copy-index.txt
index 4848206f..746f5302 100644
--- a/test/roundtrip/table-copy-index.txt
+++ b/test/roundtrip/table-copy-index.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(table $t 0 funcref)
(table $u 0 funcref)
diff --git a/test/roundtrip/table-import-externref.txt b/test/roundtrip/table-import-externref.txt
index 8633582d..fc94e19f 100644
--- a/test/roundtrip/table-import-externref.txt
+++ b/test/roundtrip/table-import-externref.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(table (import "m" "func") 1 funcref)
(table (import "m" "extern") 1 externref)
diff --git a/test/roundtrip/table-init-index.txt b/test/roundtrip/table-init-index.txt
index 3c588d3c..0c8cde6f 100644
--- a/test/roundtrip/table-init-index.txt
+++ b/test/roundtrip/table-init-index.txt
@@ -1,5 +1,5 @@
;;; TOOL: run-roundtrip
-;;; ARGS: --stdout --enable-reference-types
+;;; ARGS: --stdout
(module
(table $t 0 funcref)
(table $u 0 funcref)
diff --git a/test/run-roundtrip.py b/test/run-roundtrip.py
index 9ec7bec9..9d61634d 100755
--- a/test/run-roundtrip.py
+++ b/test/run-roundtrip.py
@@ -121,7 +121,7 @@ def main(args):
parser.add_argument('--enable-sign-extension', action='store_true')
parser.add_argument('--enable-multi-value', action='store_true')
parser.add_argument('--enable-tail-call', action='store_true')
- parser.add_argument('--enable-reference-types', action='store_true')
+ parser.add_argument('--disable-reference-types', action='store_true')
parser.add_argument('--enable-memory64', action='store_true')
parser.add_argument('--inline-exports', action='store_true')
parser.add_argument('--inline-imports', action='store_true')
@@ -142,7 +142,7 @@ def main(args):
'--enable-function-references': options.enable_function_references,
'--enable-threads': options.enable_threads,
'--enable-tail-call': options.enable_tail_call,
- '--enable-reference-types': options.enable_reference_types,
+ '--disable-reference-types': options.disable_reference_types,
'--enable-memory64': options.enable_memory64,
'--reloc': options.reloc,
'--no-check': options.no_check,
@@ -160,7 +160,7 @@ def main(args):
'--enable-sign-extension': options.enable_sign_extension,
'--enable-tail-call': options.enable_tail_call,
'--enable-function-references': options.enable_function_references,
- '--enable-reference-types': options.enable_reference_types,
+ '--disable-reference-types': options.disable_reference_types,
'--enable-threads': options.enable_threads,
'--enable-memory64': options.enable_memory64,
'--inline-exports': options.inline_exports,
diff --git a/test/run-spec-wasm2c.py b/test/run-spec-wasm2c.py
index e6327771..431622c2 100755
--- a/test/run-spec-wasm2c.py
+++ b/test/run-spec-wasm2c.py
@@ -379,6 +379,7 @@ def main(args):
find_exe.GetWast2JsonExecutable(options.bindir),
error_cmdline=options.error_cmdline)
wast2json.AppendOptionalArgs({'-v': options.verbose})
+ wast2json.AppendArg('--disable-reference-types')
wast2json.AppendArg('--disable-bulk-memory')
json_file_path = utils.ChangeDir(
diff --git a/test/spec/binary.txt b/test/spec/binary.txt
index 97363d3e..979019ef 100644
--- a/test/spec/binary.txt
+++ b/test/spec/binary.txt
@@ -1,4 +1,5 @@
;;; TOOL: run-interp-spec
+;;; ARGS*: --disable-reference-types
;;; STDIN_FILE: third_party/testsuite/binary.wast
(;; STDOUT ;;;
out/test/spec/binary.wast:6: assert_malformed passed:
diff --git a/test/spec/bulk-memory-operations/binary.txt b/test/spec/bulk-memory-operations/binary.txt
index 3b56c28a..a497f773 100644
--- a/test/spec/bulk-memory-operations/binary.txt
+++ b/test/spec/bulk-memory-operations/binary.txt
@@ -1,4 +1,5 @@
;;; TOOL: run-interp-spec
+;;; ARGS*: --disable-reference-types
;;; STDIN_FILE: third_party/testsuite/proposals/bulk-memory-operations/binary.wast
(;; STDOUT ;;;
out/test/spec/bulk-memory-operations/binary.wast:6: assert_malformed passed:
diff --git a/test/spec/bulk-memory-operations/imports.txt b/test/spec/bulk-memory-operations/imports.txt
index 51df9e35..ce8a1108 100644
--- a/test/spec/bulk-memory-operations/imports.txt
+++ b/test/spec/bulk-memory-operations/imports.txt
@@ -1,4 +1,5 @@
;;; TOOL: run-interp-spec
+;;; ARGS*: --disable-reference-types
;;; STDIN_FILE: third_party/testsuite/proposals/bulk-memory-operations/imports.wast
(;; STDOUT ;;;
called host spectest.print_i32(i32:13) =>
diff --git a/test/spec/imports.txt b/test/spec/imports.txt
index 9fcb8e9f..e3798814 100644
--- a/test/spec/imports.txt
+++ b/test/spec/imports.txt
@@ -1,4 +1,5 @@
;;; TOOL: run-interp-spec
+;;; ARGS*: --disable-reference-types
;;; STDIN_FILE: third_party/testsuite/imports.wast
(;; STDOUT ;;;
called host spectest.print_i32(i32:13) =>
diff --git a/test/spec/memory64/binary.txt b/test/spec/memory64/binary.txt
index 6cf1112c..d6135c15 100644
--- a/test/spec/memory64/binary.txt
+++ b/test/spec/memory64/binary.txt
@@ -1,6 +1,6 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/memory64/binary.wast
-;;; ARGS*: --enable-memory64
+;;; ARGS*: --enable-memory64 --disable-reference-types
(;; STDOUT ;;;
out/test/spec/memory64/binary.wast:6: assert_malformed passed:
0000000: error: unable to read uint32_t: magic
diff --git a/test/spec/reference-types/binary-leb128.txt b/test/spec/reference-types/binary-leb128.txt
index c35213b4..72e56434 100644
--- a/test/spec/reference-types/binary-leb128.txt
+++ b/test/spec/reference-types/binary-leb128.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/binary-leb128.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/binary-leb128.wast:218: assert_malformed passed:
000000c: error: unable to read u32 leb128: memory initial page count
diff --git a/test/spec/reference-types/binary.txt b/test/spec/reference-types/binary.txt
index 4009f571..e6b1ab5c 100644
--- a/test/spec/reference-types/binary.txt
+++ b/test/spec/reference-types/binary.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/binary.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/binary.wast:6: assert_malformed passed:
0000000: error: unable to read uint32_t: magic
diff --git a/test/spec/reference-types/br_table.txt b/test/spec/reference-types/br_table.txt
index 9043dea5..feb229b7 100644
--- a/test/spec/reference-types/br_table.txt
+++ b/test/spec/reference-types/br_table.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/br_table.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/br_table.wast:1441: assert_invalid passed:
error: type mismatch in block, expected [] but got [i32]
diff --git a/test/spec/reference-types/bulk.txt b/test/spec/reference-types/bulk.txt
index f9308ccb..099e571f 100644
--- a/test/spec/reference-types/bulk.txt
+++ b/test/spec/reference-types/bulk.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/bulk.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
fill(i32:1, i32:255, i32:3) =>
fill(i32:0, i32:48042, i32:2) =>
diff --git a/test/spec/reference-types/call_indirect.txt b/test/spec/reference-types/call_indirect.txt
index 88b98a58..17a54826 100644
--- a/test/spec/reference-types/call_indirect.txt
+++ b/test/spec/reference-types/call_indirect.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/call_indirect.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/call_indirect.wast:498: assert_trap passed: indirect call signature mismatch
out/test/spec/reference-types/call_indirect.wast:499: assert_trap passed: indirect call signature mismatch
diff --git a/test/spec/reference-types/custom.txt b/test/spec/reference-types/custom.txt
index 6fbd2262..5ab901e6 100644
--- a/test/spec/reference-types/custom.txt
+++ b/test/spec/reference-types/custom.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/custom.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/custom.wast:61: assert_malformed passed:
0000009: error: unable to read u32 leb128: section size
diff --git a/test/spec/reference-types/data.txt b/test/spec/reference-types/data.txt
index d3e3d4bc..16969b30 100644
--- a/test/spec/reference-types/data.txt
+++ b/test/spec/reference-types/data.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/data.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/data.wast:293: assert_invalid passed:
0000000: error: memory variable out of range: 0 (max 0)
diff --git a/test/spec/reference-types/elem.txt b/test/spec/reference-types/elem.txt
index 0ba0ec0e..61b971c3 100644
--- a/test/spec/reference-types/elem.txt
+++ b/test/spec/reference-types/elem.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/elem.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/elem.wast:320: assert_trap passed: out of bounds table access: table.init out of bounds
out/test/spec/reference-types/elem.wast:330: assert_trap passed: out of bounds table access: table.init out of bounds
diff --git a/test/spec/reference-types/exports.txt b/test/spec/reference-types/exports.txt
index c1750d71..0fb8bdc8 100644
--- a/test/spec/reference-types/exports.txt
+++ b/test/spec/reference-types/exports.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/exports.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/exports.wast:29: assert_invalid passed:
0000000: error: function variable out of range: 1 (max 1)
diff --git a/test/spec/reference-types/global.txt b/test/spec/reference-types/global.txt
index 0a34a13b..e2e6fa1a 100644
--- a/test/spec/reference-types/global.txt
+++ b/test/spec/reference-types/global.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/global.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/global.wast:232: assert_trap passed: undefined table index
out/test/spec/reference-types/global.wast:254: assert_invalid passed:
diff --git a/test/spec/reference-types/imports.txt b/test/spec/reference-types/imports.txt
index e26ea8fc..21367f9b 100644
--- a/test/spec/reference-types/imports.txt
+++ b/test/spec/reference-types/imports.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/imports.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
called host spectest.print_i32(i32:13) =>
called host spectest.print_i32_f32(i32:14, f32:42.000000) =>
diff --git a/test/spec/reference-types/linking.txt b/test/spec/reference-types/linking.txt
index 1b09f540..758eb4dc 100644
--- a/test/spec/reference-types/linking.txt
+++ b/test/spec/reference-types/linking.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/linking.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/linking.wast:28: assert_unlinkable passed:
error: import signature mismatch
diff --git a/test/spec/reference-types/memory_copy.txt b/test/spec/reference-types/memory_copy.txt
index 5b4ce614..fe4630dc 100644
--- a/test/spec/reference-types/memory_copy.txt
+++ b/test/spec/reference-types/memory_copy.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_copy.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
test() =>
test() =>
diff --git a/test/spec/reference-types/memory_fill.txt b/test/spec/reference-types/memory_fill.txt
index edab2478..fa1d88bb 100644
--- a/test/spec/reference-types/memory_fill.txt
+++ b/test/spec/reference-types/memory_fill.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_fill.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
test() =>
out/test/spec/reference-types/memory_fill.wast:44: assert_trap passed: out of bounds memory access: memory.fill out of bounds
diff --git a/test/spec/reference-types/memory_grow.txt b/test/spec/reference-types/memory_grow.txt
index 76a465ac..3af85468 100644
--- a/test/spec/reference-types/memory_grow.txt
+++ b/test/spec/reference-types/memory_grow.txt
@@ -1,7 +1,6 @@
;;; SLOW:
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_grow.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/memory_grow.wast:15: assert_trap passed: out of bounds memory access: access at 0+4 >= max value 0
out/test/spec/reference-types/memory_grow.wast:16: assert_trap passed: out of bounds memory access: access at 0+4 >= max value 0
diff --git a/test/spec/reference-types/memory_init.txt b/test/spec/reference-types/memory_init.txt
index c9b786c3..38ca68fe 100644
--- a/test/spec/reference-types/memory_init.txt
+++ b/test/spec/reference-types/memory_init.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_init.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
test() =>
test() =>
diff --git a/test/spec/reference-types/ref_func.txt b/test/spec/reference-types/ref_func.txt
index b4390fcd..8c90b864 100644
--- a/test/spec/reference-types/ref_func.txt
+++ b/test/spec/reference-types/ref_func.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_func.wast
-;;; ARGS*: --enable-reference-types
(;; STDERR ;;;
out/test/spec/reference-types/ref_func.wast:98:15: error: function is not declared in any elem sections
(ref.func $f1)
diff --git a/test/spec/reference-types/ref_is_null.txt b/test/spec/reference-types/ref_is_null.txt
index b3cc0ede..f6bcb4a8 100644
--- a/test/spec/reference-types/ref_is_null.txt
+++ b/test/spec/reference-types/ref_is_null.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_is_null.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
init(externref:1) =>
deinit() =>
diff --git a/test/spec/reference-types/ref_null.txt b/test/spec/reference-types/ref_null.txt
index bfd6fb4f..a49e36ae 100644
--- a/test/spec/reference-types/ref_null.txt
+++ b/test/spec/reference-types/ref_null.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_null.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
2/2 tests passed.
;;; STDOUT ;;)
diff --git a/test/spec/reference-types/select.txt b/test/spec/reference-types/select.txt
index 84e57e17..300bea1d 100644
--- a/test/spec/reference-types/select.txt
+++ b/test/spec/reference-types/select.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/select.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/select.wast:260: assert_trap passed: unreachable executed
out/test/spec/reference-types/select.wast:261: assert_trap passed: unreachable executed
diff --git a/test/spec/reference-types/table-sub.txt b/test/spec/reference-types/table-sub.txt
index 313158f6..d9622c30 100644
--- a/test/spec/reference-types/table-sub.txt
+++ b/test/spec/reference-types/table-sub.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table-sub.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table-sub.wast:2: assert_invalid passed:
error: type mismatch at table.copy. got externref, expected funcref
diff --git a/test/spec/reference-types/table.txt b/test/spec/reference-types/table.txt
index a0dde4c4..4cc95c9d 100644
--- a/test/spec/reference-types/table.txt
+++ b/test/spec/reference-types/table.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table.wast:14: assert_invalid passed:
0000000: error: table variable out of range: 0 (max 0)
diff --git a/test/spec/reference-types/table_copy.txt b/test/spec/reference-types/table_copy.txt
index 0fadee3e..c88eec79 100644
--- a/test/spec/reference-types/table_copy.txt
+++ b/test/spec/reference-types/table_copy.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_copy.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
test() =>
out/test/spec/reference-types/table_copy.wast:46: assert_trap passed: uninitialized table element
diff --git a/test/spec/reference-types/table_fill.txt b/test/spec/reference-types/table_fill.txt
index 2910f923..556edba9 100644
--- a/test/spec/reference-types/table_fill.txt
+++ b/test/spec/reference-types/table_fill.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_fill.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table_fill.wast:50: assert_trap passed: out of bounds table access: table.fill out of bounds
out/test/spec/reference-types/table_fill.wast:58: assert_trap passed: out of bounds table access: table.fill out of bounds
diff --git a/test/spec/reference-types/table_get.txt b/test/spec/reference-types/table_get.txt
index a2be5a23..f4c34a3e 100644
--- a/test/spec/reference-types/table_get.txt
+++ b/test/spec/reference-types/table_get.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_get.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
init(externref:2) =>
out/test/spec/reference-types/table_get.wast:33: assert_trap passed: out of bounds table access: table.get at 2 >= max value 2
diff --git a/test/spec/reference-types/table_grow.txt b/test/spec/reference-types/table_grow.txt
index 6a60f6eb..6b163a2b 100644
--- a/test/spec/reference-types/table_grow.txt
+++ b/test/spec/reference-types/table_grow.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_grow.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table_grow.wast:14: assert_trap passed: out of bounds table access: table.set at 0 >= max value 0
out/test/spec/reference-types/table_grow.wast:15: assert_trap passed: out of bounds table access: table.get at 0 >= max value 0
diff --git a/test/spec/reference-types/table_init.txt b/test/spec/reference-types/table_init.txt
index efb6e6e2..6c81ee0e 100644
--- a/test/spec/reference-types/table_init.txt
+++ b/test/spec/reference-types/table_init.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_init.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
test() =>
out/test/spec/reference-types/table_init.wast:42: assert_trap passed: uninitialized table element
diff --git a/test/spec/reference-types/table_set.txt b/test/spec/reference-types/table_set.txt
index a479c7ab..c8e964ee 100644
--- a/test/spec/reference-types/table_set.txt
+++ b/test/spec/reference-types/table_set.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_set.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table_set.wast:41: assert_trap passed: out of bounds table access: table.set at 2 >= max value 1
out/test/spec/reference-types/table_set.wast:42: assert_trap passed: out of bounds table access: table.set at 3 >= max value 2
diff --git a/test/spec/reference-types/table_size.txt b/test/spec/reference-types/table_size.txt
index 823ec64d..0564abb4 100644
--- a/test/spec/reference-types/table_size.txt
+++ b/test/spec/reference-types/table_size.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_size.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/table_size.wast:70: assert_invalid passed:
error: type mismatch in function, expected [] but got [i32]
diff --git a/test/spec/reference-types/unreached-invalid.txt b/test/spec/reference-types/unreached-invalid.txt
index f687a4a3..bf7812b0 100644
--- a/test/spec/reference-types/unreached-invalid.txt
+++ b/test/spec/reference-types/unreached-invalid.txt
@@ -1,6 +1,5 @@
;;; TOOL: run-interp-spec
;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/unreached-invalid.wast
-;;; ARGS*: --enable-reference-types
(;; STDOUT ;;;
out/test/spec/reference-types/unreached-invalid.wast:4: assert_invalid passed:
0000000: error: local variable out of range (max 0)
diff --git a/test/spec/table.txt b/test/spec/table.txt
index 535f089c..97b82807 100644
--- a/test/spec/table.txt
+++ b/test/spec/table.txt
@@ -1,4 +1,5 @@
;;; TOOL: run-interp-spec
+;;; ARGS*: --disable-reference-types
;;; STDIN_FILE: third_party/testsuite/table.wast
(;; STDOUT ;;;
out/test/spec/table.wast:11: assert_invalid passed:
diff --git a/test/typecheck/bad-reference-types-no-table.txt b/test/typecheck/bad-reference-types-no-table.txt
index 0c0449ee..6f9d458e 100644
--- a/test/typecheck/bad-reference-types-no-table.txt
+++ b/test/typecheck/bad-reference-types-no-table.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
;;; ERROR: 1
(module
@@ -11,10 +10,10 @@
)
)
(;; STDERR ;;;
-out/test/typecheck/bad-reference-types-no-table.txt:9:15: error: undefined table variable "$t"
+out/test/typecheck/bad-reference-types-no-table.txt:8:15: error: undefined table variable "$t"
table.get $t
^^
-out/test/typecheck/bad-reference-types-no-table.txt:10:15: error: undefined table variable "$t"
+out/test/typecheck/bad-reference-types-no-table.txt:9:15: error: undefined table variable "$t"
table.set $t
^^
;;; STDERR ;;)
diff --git a/test/typecheck/if-anyref.txt b/test/typecheck/if-anyref.txt
index 049d7992..7d84c1cf 100644
--- a/test/typecheck/if-anyref.txt
+++ b/test/typecheck/if-anyref.txt
@@ -1,5 +1,4 @@
;;; TOOL: wat2wasm
-;;; ARGS: --enable-reference-types
(module
(func (param externref) (result externref)
i32.const 0
diff --git a/test/update-spec-tests.py b/test/update-spec-tests.py
index 8215f9d1..c1830f00 100755
--- a/test/update-spec-tests.py
+++ b/test/update-spec-tests.py
@@ -90,7 +90,6 @@ def main(args):
ProcessProposalDir('nontrapping-float-to-int-conversions',
'--enable-saturating-float-to-int')
ProcessProposalDir('sign-extension-ops', '--enable-sign-extension')
- ProcessProposalDir('reference-types', '--enable-reference-types')
ProcessProposalDir('memory64', '--enable-memory64')
return 0