mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-03-13 17:57:12 +08:00
changes.src: document preprocessor directives added since 2.07
nasmdoc.src: document %exitmacro
This commit is contained in:
parent
3c0d91f3d5
commit
4ea846623a
@ -11,8 +11,18 @@ since 2007.
|
||||
|
||||
\b A number of enhancements/fixes in macros area.
|
||||
|
||||
\b Support for arbitrarily terminating macro expansions \c{%exitmacro}.
|
||||
See \k{exitmacro}.
|
||||
|
||||
\b Support for recursive macro expansion \c{%rmacro/irmacro}.
|
||||
See \k{mlrmacro}.
|
||||
|
||||
\b Support for converting strings to tokens. See \k{deftok}.
|
||||
|
||||
\b Fuzzy operand size logic introduced.
|
||||
|
||||
\b Fix Macho-O alignment bug.
|
||||
|
||||
\b Fix crashes with -fwin32 on file with many exports.
|
||||
|
||||
\b Fix stack overrun for too long [DEBUG id].
|
||||
@ -25,6 +35,7 @@ since 2007.
|
||||
|
||||
\b Warn a user if a constant too long (and as a result will be stripped).
|
||||
|
||||
|
||||
\S{cl-2.07} Version 2.07
|
||||
|
||||
\b NASM is now under the 2-clause BSD license. See \k{legal}.
|
||||
|
@ -2826,6 +2826,22 @@ removes the previously defined macro \c{foo}, but
|
||||
does \e{not} remove the macro \c{bar}, since the argument
|
||||
specification does not match exactly.
|
||||
|
||||
|
||||
\S{exitmacro} Exiting Multi-Line Macros: \i\c{%exitmacro}
|
||||
|
||||
Multi-line macro expansions can be arbitrarily terminated with
|
||||
the \c{%exitmacro} directive.
|
||||
|
||||
For example:
|
||||
|
||||
\c %macro foo 1-3
|
||||
\c ; Do something
|
||||
\c %if<condition>
|
||||
\c %exitmacro
|
||||
\c %endif
|
||||
\c ; Do something
|
||||
\c %endmacro
|
||||
|
||||
\H{condasm} \i{Conditional Assembly}\I\c{%if}
|
||||
|
||||
Similarly to the C preprocessor, NASM allows sections of a source
|
||||
|
Loading…
x
Reference in New Issue
Block a user