[Nasm-bugs] [Bug 3392733] New: git nasm: %assign ?%1 is broken: error: `%assign' expects a macro identifier

noreply-nasm at dev.nasm.us noreply-nasm at dev.nasm.us
Sun Dec 27 16:44:04 PST 2020


https://bugzilla.nasm.us/show_bug.cgi?id=3392733

            Bug ID: 3392733
           Summary: git nasm: %assign ?%1 is broken: error: `%assign'
                    expects a macro identifier
           Product: NASM
           Version: 2.16 (development)
          Hardware: All
                OS: All
            Status: OPEN
          Severity: blocker
          Priority: Medium
         Component: Assembler
          Assignee: nobody at nasm.us
          Reporter: pushbx at ulukai.org
                CC: chang.seok.bae at intel.com, gorcunov at gmail.com,
                    hpa at zytor.com, nasm-bugs at nasm.us
     Obtained from: Built from git using configure

The nasm binary is as built from nasm-2.15.05-113-gdc4a6194. This bug disables
all usages of my stack frame calculation macros because they preserve and set
up defines using the ?%1 naming scheme. The lmacros2.mac file used by the
longer example is available at https://hg.ulukai.org/ecm/lmacros

I have not yet found a workaround for this bug. Downgrading the nasm I'll use
for now.

$ nasm -v
NASM version 2.16rc0 compiled on Dec 28 2020
$ cat test1.asm
%include "lmacros2.mac"

        lframe none
        lenter
        lvar word, definename
        lleave
$ nasm test1.asm -I ../lmacros/
test1.asm:4: error: `%ifdef' expects macro identifiers
test1.asm:4: error: `%assign' expects a macro identifier
test1.asm:5: error: `%ifdef' expects macro identifiers
test1.asm:5: error: `%assign' expects a macro identifier
$ cat test2.asm
        %macro mac 1
%assign ?%1 1
        %endmacro

mac definename
$ nasm test2.asm
test2.asm:5: error: `%assign' expects a macro identifier
test2.asm:2: ... from macro `mac' defined here
$ oldnasm -v
NASM version 2.14.03rc2 compiled on Aug 31 2019
$ oldnasm test1.asm -I ../lmacros/
$ oldnasm test2.asm

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are watching all bug changes.


More information about the Nasm-bugs mailing list