News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Another macro problem

Started by Gustav, January 31, 2006, 06:43:03 AM

Previous topic - Next topic

Gustav


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

hutch--

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.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php