(module
 (type $externref_=>_externref (func (param externref) (result externref)))
 (import "env" "test2" (global $gimport$1 externref))
 (import "env" "test1" (func $test1 (param externref) (result externref)))
 (memory $0 1 1)
 (export "test1" (func $test1))
 (export "test2" (global $gimport$1))
 (func $externref_test (; 1 ;) (param $0 externref) (result externref)
  (local $1 externref)
  (local.set $1
   (call $test1
    (local.get $0)
   )
  )
  (return
   (local.get $1)
  )
 )
)

