[fpc-pascal] undefining multiple defines

Olle Raab olle.r at automagika.se
Sun Mar 6 23:30:58 CET 2005


05-03-03 10.55, skrev Marc Santhoff följande:

> Am Do, den 03.03.2005 schrieb Marco van de Voort um 08:32:
>>> unit b;
>>> ...
>>> {$undef M1-M15}
>> 
>> Such constructs won't work, for the same reason that variablenames with
>> numbers in it can't be used as such.
>> 
>> For the compiler it is an alphanumerical identifier, and the number(s) have
>> no meaning.
> 
> According to the Programmers Guide MACPAS-Mode alows to use $SETC M=8
> and I assume that "$if M=8" can check it.

In MACPAS it would be "$IFC M=8" but otherwise you are correct.

> Unfortunately my program is compiled with -S2 and I fear these two modes
> are no combinable (I'll test later), are they?

No, sorry.


You can however define a macro, afaik:

{$DEFINE M := 8}

To get this work you then have to turn macros on in the unit, and live with
that:

{$MACRO ON}

Olle





More information about the fpc-pascal mailing list