NASM - The Netwide Assembler

NASM Forum => Programming with NASM => Topic started by: zenixan on February 13, 2010, 09:36:44 PM

Title: Preprocessor patch
Post by: zenixan on February 13, 2010, 09:36:44 PM
I realized macro command conditions "%iflabel", which checks whether a label is declared. Is it possible to add this patch to the current version of nasm?

Sorry for my English.
Title: Re: Preprocessor patch
Post by: Cyrill Gorcunov on February 14, 2010, 07:26:38 AM
Consider sending patch to nasm-devel@ mailing list.
And could you please explain the reason why you need this feature?
Title: Re: Preprocessor patch
Post by: zenixan on February 14, 2010, 01:20:20 PM
This macro-command needed for writing clean code. For example, we have two structures:
struc struct1

   .first: resd 1

   .second: resw 1

endstruc



struc struct2

   .first: resd 1

   .second: resw 1

endstruc


Initialize field of the structure can be any label outside of the structure. For example,
istruc struct2

   at struct1.second, dw 1

iend

A solution could be used to use a local label: at .second, dw 1.
But coercive testing with macrocommand "%iflabel" excludes external label in the structure.