#526 "%if 0x%1" in macro is no longer accepted in 2.09

open
nobody
5
2011-01-05
2011-01-05
No

---- tst.S ----
%macro hexcmp 1
%if 0x%1 >= 0x100
%endif
%endmacro

hexcmp 9E
---------------

Now fails with:
$ /mnt/svn/nasm/nasm tst.S
tst.S:6: warning: (hexcmp:1) trailing garbage after expression ignored

Failing versions:
$ nasm -v
NASM version 2.09.04 compiled on Jan 5 2011
$ /mnt/svn/nasm/nasm -v
NASM version 2.10rc3 compiled on Jan 6 2011

Working versions:
$ ~/nasm-2.07/nasm -v
NASM version 2.07 compiled on Dec 18 2010
$ nasm -v
NASM version 2.08.02 compiled on Jan 6 2011

Discussion

  • Zdenek Sojka

    Zdenek Sojka - 2011-01-06

    It was also working with:
    $ nasm -v
    NASM version 0.98.39 compiled on Jan 6 2011

    but NOT with:
    $ nasm -v
    NASM version 2.05.01 compiled on Jan 6 2011

    so it seems this behaviour might be intentional...

     
  • H. Peter Anvin

    H. Peter Anvin - 2011-04-08

    This is something which should work per our normal token-pasting rules, but which can easily break due to the fragile implementation of token pasting. As such, it is definitely a bug.

     
  • Nobody/Anonymous

    I'll take a look, thanks for report

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks