Page 1 of 1

MACROS

Posted: 28 Aug 2018 02:28
by ar18
I noticed in the example for %SET2, that the directive %DataExp was used, but I can't find anything on the website that explains what it is or does. It looks like a function/macro for concatenating parameters inside a MACRO. Could you please explain %DataExp?

Ditto for %Suffix and %# in the WinAPI macro -- especially %#, which should be listed in the index.

Also, I noticed that €ASM supports VARARGs in the form of ,,,
That is a good feature that needs to be advertised somewhere, especially since it can be placed anywhere in the parameter list, with the only restriction being it only applies to ordinal arguments.

Re: MACROS

Posted: 28 Aug 2018 21:22
by vitsoft
%DataExp used in the example for %SET2 https://euroassembler.eu/eadoc/index.htm#pcSET2 is an arbitrary chosen name of preprocessing variable, which is being assigned with %SET2, it is not a function/macro/directive. The only pseudoinstructions which begin with % are listed at https://euroassembler.eu/eadoc/index.ht ... structions and I write them in upper case. Other identifiers, which are not part of the language, are written in mixed case.
Ditto the term %suffix used in https://euroassembler.eu/maclib/winapi.htm#WinAPI, it is user-defined preprocessing variable, which will be assigned with the letter 'A' or 'W', or which will be left empty if the invoked API function has not ANSI | WIDE variant.

Special automatic variable %# represents the number of ordinal operands used in macro, it is described at https://euroassembler.eu/eadoc/#AutomaticVariables. You are right, it doesn't appear in index and it's not searchable by the applet in title strip. I'll fix that in the next release, thank you.

Re: MACROS

Posted: 29 Aug 2018 00:43
by ar18
Got it.