1;;! reference_types = true
2
3(module
4  (table $t1 0 funcref)
5
6  (func (export "grow-by-10") (param $r funcref) (result i32)
7    (table.grow $t1 (local.get $r) (i32.const 10))
8  )
9  (func (export "grow-over") (param $r funcref) (result i32)
10    (table.grow $t1 (local.get $r) (i32.const 0xffff_fff0))
11  )
12
13  (func (export "size") (result i32)
14    (table.size $t1))
15)
16
17(assert_return (invoke "size") (i32.const 0))
18(assert_return (invoke "grow-by-10" (ref.null func)) (i32.const 0))
19(assert_return (invoke "size") (i32.const 10))
20
21(module
22  (table $t 0x10 funcref)
23  (func $f (export "grow") (param $r funcref) (result i32)
24    (table.grow $t (local.get $r) (i32.const 0xffff_fff0))
25  )
26)
27
28(assert_return (invoke "grow" (ref.null func)) (i32.const -1))
29