(module
(type (;0;) (func (param i32 i64)))
(type (;1;) (func (param i32)))
(type (;2;) (func))
(type (;3;) (func (result i32 i64)))
(type (;4;) (func (param i32) (result i32 i64)))
(import "m" "t" (tag (;0;) (type 0) (param i32 i64)))
(tag (;1;) (type 1) (param i32))
(func $check-throw (;0;) (type 2)
i32.const 1
i64.const 2
throw 0
)
(func $check-try-catch-rethrow (;1;) (type 2)
try (type 3) (result i32 i64) ;; label = @1
call $check-throw
unreachable
catch 0
catch 1
i64.const 2
catch_all
rethrow 0 (;@1;)
end
drop
drop
)
(func $try-with-params (;2;) (type 2)
i32.const 0
try (type 4) (param i32) (result i32 i64) ;; label = @1
i32.popcnt
drop
call $check-throw
unreachable
catch 1
i64.const 2
catch_all
i32.const 0
i64.const 2
end
drop
drop
)
(func $mix-old-and-new (;3;) (type 2)
try_table ;; label = @1
try ;; label = @2
catch_all
end
end
)
)