PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bedingtes Compelieren



Loro
31.03.2009, 19:51
Hallo zusammen,

ich habe mich mal mit dem "Conditional compilation" beschäftigt und dabei Volgendes "Problem" gefunden.


Mein Code:


const proztype = 1

#if Proztype
$regfile = "m2561def.dat"
#else
$regfile = "m128def.dat"
#EndIf


Nur leider wird beim Compelieren immer nur der if Zweig durchlaufen, auch wenn der Protzype = 0 gestzt ist, wird der if-Zweig betreten. Nachfolgenden Verzweigungen werden richtig durchlaufen.

Netzman
31.03.2009, 20:08
Als erstes würde ich mal
#if Proztype = 1

#endif probieren, verbessert wenn auch nur die Lesbarkeit.
Nach meinen Erfahrungen kann man $regfile nicht in einen #if Block fassen, sondern darf nur "alleine" da stehen (Siehe zb. den Bootloader bei den Samples).

mfg

Loro
31.03.2009, 20:34
Ich habe mir schon so was gedacht, hätte ja seien können das es da einen Trick gibt :-)

stefan_Z
01.04.2009, 12:43
Habs auch grad mal getestet, ist wirklich so, dass immer nur #if beachtet wird. (aktuelle Vollversion)

Ich würde tippen, dass das ein Bug ist.
Werds mal in den passenden Thread schreiben...