hello,
this little test case:
.386
.model flat
CStr macro strng:req
local sym,xxx
xxx textequ @CurSeg
%echo xxx
ifidni xxx,<CONST>
CONST$2 segment para public 'CONST'
else
CONST segment dword public 'CONST'
endif
ifidni <strng>,<"">
sym db 0
else
sym db strng,0
endif
ifidni xxx,<CONST>
CONST$2 ends
else
CONST ends
endif
exitm <offset sym>
endm
.code
start:
mov eax, CStr("hello")
mov ax,4c00h
int 21h
end start
assembles fine with MASM, but POASM fails (most likely because it doesn't know predefined @CurSeg string).
It also shows that it is important for a macro assembler to not only tell the line where the error occurs but also the line inside a macro, as it is done my masm.
Regards
Gustav
Ok, I have just solved the problem, I removed the rest of the postings. Lets keep this topc a purely technical one with NO sniping at anyone else.
As it was not mentioned in the original post, Gustav's code is for a 32 bit DOS extender, not win32.