My guess is this is the behavior you get because you're using integer literals 
and those are always "int"s at macro resolution time.

It should work like you want if you do:
    
    
    proc main() =
      test(
        1.printType(),
        2'i16.printType(),
        3'i32.printType()
      )
    
    
    Run

Reply via email to