first code(works normal):
format PE Console
include 'win32ax.inc'
;macro def_opt456
; {
macro opt6 param
{
define hTFs 0
match =1,param#.proc
\{ call param
define hTFs 1 \}
match =0,hTFs \{ call [param] \}
}
;}
;def_opt456
define EntryPoint.proc 1
.code
EntryPoint:
int 3
opt6 EntryPoint
invoke ExitProcess,0
.end EntryPoint
in the second code, something strange appear.
format PE Console
include 'win32ax.inc'
macro def_opt456
{
macro opt6 param
\{
define hTFs 0
match =1,param#.proc ;<- here. !!!
\\{ call param
define hTFs 1 \\}
match =0,hTFs \\{ call [param] \\}
\}
}
def_opt456
define EntryPoint.proc 1
.code
EntryPoint:
int 3
opt6 EntryPoint
invoke ExitProcess,0
.end EntryPoint
the string "match =1,param#.proc" after preprocessing looks like:
match=1,param.proc
but I pass to this macro an argument.
i think must be something like:
match =1,EntryPoint.proc then match =1,1
what am i miss?