Menu

#76 add support for %^ to perform recursive smac expansion

open
nobody
None
1
2004-05-09
2004-05-09
No

After having performed single-line macro expansion
the preprocessor will handle concatenation attempts
and -- if anything was concatenated -- re-process
the token list once more. However, as mentioned in
e.g. SF #821975 and/or SF #839189, this recursion
should be optional and explicitly requested by the
user, as it can have undesired effects.

Therefore I have added support for "%^" to my local
forked version of NASM. It's placement within a list
of tokens doesn't matter; the first "%^" triggers a
recursion; hence multiple "%^"s will trigger mul-
tiple recursions. More than 99 levels of recursion
will trigger a suppressible warning; eventually the
preprocessor will run out of stack space... though
not out of data memory. Using "%{^}" yields "%^",
but without the new "%^" functionality.

I will attach a description of the needed changes
as well as a set of testcases.

Discussion

  • nasm64developer

    nasm64developer - 2004-05-09
     
  • nasm64developer

    nasm64developer - 2004-05-09
     
  • nasm64developer

    nasm64developer - 2004-05-09
    • priority: 5 --> 1
     

Log in to post a comment.