I noticed that my macro doesn't pass arguments to the macro body as it should. Here's the macro and code:
macro vmi_mov op1, arg2 {
db 00h
if arg2 > 16 ; error should be pointed here
if op1 > 7
db 1
dq arg2
else
db 2
db (op1 shl 4) or arg2 ; fasmw shows error here 'db(8 shl 4)or 100.0' Error: Invalid name
end if
else if arg2 = -1 | arg2 = -2
db 3
db op1
db arg2
else
db 4
db op1
if op1 < 4
dd arg2
else
dq arg2
end if
end if
end if }
vmi_mov 8, 100.0
Error should be pointed before because when for example I created new asm file and put there:
The error was pointed there and showing 'Error: Extra characters on line'