code: def test_adt_match():
      mod = tvm.IRModule()
      box, constructor = initialize_box_adt(mod)
  
      v = relay.Var("v", relay.TensorType((), "float32"))
      match = relay.Match(
          constructor(relay.const(0, "float32")),
          [
              relay.Clause(
                  relay.PatternConstructor(
                      constructor, [relay.PatternVar(v)]
                  ),
                  relay.Tuple([]),
              ),
              # redundant but shouldn't matter to typechecking
              relay.Clause(relay.PatternWildcard(), relay.Tuple([])),
          ],
      )
  
      func = relay.Function([], match)
      mod["main"] = func
      mod = infer_mod(mod)
      actual = mod["main"].checked_type.ret_type
      assert actual == relay.TupleType([])
  
imports: import pytest
  import tvm
  from tvm import IRModule, parser, relay, te
  from tvm.relay import analysis, op, transform
  from tvm.relay.op import op
  import numpy
label_desc: Use image node_id 23 for calling a global function with example usage: test_adt_match() without return types