summaryrefslogtreecommitdiff
path: root/test/spec/array-new-data.wast
diff options
context:
space:
mode:
Diffstat (limited to 'test/spec/array-new-data.wast')
-rw-r--r--test/spec/array-new-data.wast12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/spec/array-new-data.wast b/test/spec/array-new-data.wast
index 8ef62cb87..5d49a0487 100644
--- a/test/spec/array-new-data.wast
+++ b/test/spec/array-new-data.wast
@@ -77,3 +77,15 @@
(assert_return (invoke "get" (i32.const 0)) (i32.const 1))
(assert_return (invoke "set_get" (i32.const 1) (i32.const 7)) (i32.const 7))
(assert_return (invoke "len") (i32.const 3))
+
+(module
+ (type $vec (array i32))
+
+ (data "\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00")
+
+ (func $new-huge (export "new-huge") (result (ref $vec))
+ (array.new_data $vec 0 (i32.const 1) (i32.const -1))
+ )
+)
+
+(assert_trap (invoke "new-huge") "out of bounds segment access in array.new_data")