Makro mit CompilerIf als Code
Verfasst: 21.02.2020 12:00
Ich möchte für ein eigenes Debugsystem, ein Makro nur mit dem Code "CompilerIf ..." verwenden. Ich bekomme aber immer einen Compiler-Fehler. Gibt es da eine Lösung, oder wird das "CompilerIf ..." ausgeführt und nicht nur im Code eingefügt? Wenn beide Teile CompilerIf/EndIf vorhanden sind gibt es keine Fehler.
Peter
Edit:
Ich vermute es wird immer auf ein CompilerIf/EndIf-Paar geprüft. Also innerhalb eines Makros, Prozedur oder Modul.
Peter
Edit:
Ich vermute es wird immer auf ein CompilerIf/EndIf-Paar geprüft. Also innerhalb eines Makros, Prozedur oder Modul.
Code: Alles auswählen
EnableExplicit
;#fDebug = 1 ; Ohne Fehler, mit Debugausgabe.
#fDebug = 0 ; [COMPILER] Line 23: 'CompilerIf' without 'CompilerEndIf'.
Macro DebugIf
CompilerIf #fDebug
EndMacro
Macro DebugEndIf
CompilerEndIf
EndMacro
Macro DebugIfEndIf
CompilerIf #fDebug
Debug "If und EndIf gemeinsam."
CompilerEndIf
EndMacro
Procedure Test()
DebugIf
Debug "If und EndIf getrennt."
DebugEndIf
DebugIfEndIf
EndProcedure
Test()