@@ -38,7 +38,7 @@ arguments as a tuple-type in `argtyp`.
3838:(@asmcall )
3939
4040macro asmcall (asm:: String , constraints:: String , side_effects:: Bool ,
41- rettyp:: Symbol = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
41+ rettyp:: Union{Expr, Symbol} = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
4242 asm_val = Val {Symbol(asm)} ()
4343 constraints_val = Val {Symbol(constraints)} ()
4444 return esc (:(LLVM. Interop. _asmcall ($ asm_val, $ constraints_val,
4848
4949# shorthand: no side_effects
5050macro asmcall (asm:: String , constraints:: String ,
51- rettyp:: Symbol = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
51+ rettyp:: Union{Expr, Symbol} = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
5252 esc (:(LLVM. Interop. @asmcall $ asm $ constraints false $ rettyp $ argtyp $ (args... )))
5353end
5454
5555# shorthand: no side_effects or constraints
5656macro asmcall (asm:: String ,
57- rettyp:: Symbol = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
57+ rettyp:: Union{Expr, Symbol} = :(Nothing), argtyp:: Expr = :(Tuple{}), args... )
5858 esc (:(LLVM. Interop. @asmcall $ asm " " $ rettyp $ argtyp $ (args... )))
5959end
0 commit comments