From a91bd145008432fb8c5d91d94ab6f50473a277f5 Mon Sep 17 00:00:00 2001 From: _ov4 Date: Tue, 27 Oct 2026 13:55:36 +0000 Subject: feat(preprocessor): add file-local conditional switches Co-Authored-By: Claude Opus 5.5 --- tests/i/preprocessor/program.cps | 44 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/i/preprocessor/program.cps (limited to 'tests/i/preprocessor/program.cps') diff --git a/tests/i/preprocessor/program.cps b/tests/i/preprocessor/program.cps new file mode 100644 index 0000000..fe0b9ce --- /dev/null +++ b/tests/i/preprocessor/program.cps @@ -0,0 +1,44 @@ +PP_DEFINE MainFlag // File-local and case-sensitive. +PP_DEFINE MainFlag +INCLUDE "peer.cps" +PP_IFDEF MainFlag +OUTPUT 1 +PP_ENDIF +PP_IFNDEF mainflag +OUTPUT 2 +PP_ENDIF +PP_IFDEF PeerFlag +OUTPUT MissingPeerFlag +PP_ENDIF +PP_IFDEF Absent +"unterminated literal +PP_DEFINE Hidden +PP_UNDEF MainFlag +PP_IFNDEF Other +#INVALID +PP_DEFINE +PP_ENDIF +PP_ENDIF +PP_IFNDEF Hidden +OUTPUT 3 +PP_ENDIF +PP_IFDEF MainFlag +OUTPUT 4 +PP_ENDIF +PP_UNDEF MainFlag +PP_UNDEF MainFlag +PP_IFDEF MainFlag +OUTPUT MissingMainFlag +PP_ENDIF +PP_IFNDEF MainFlag + PP_IFNDEF Hidden // Nested enabled conditions. +OUTPUT 5 + PP_ENDIF +PP_ENDIF +DECLARE Flag : INTEGER +PP_DEFINE Flag +Flag <- 6 +OUTPUT Flag +CALL Peer() +// PP_IFDEF CommentedOut +OUTPUT "PP_DEFINE Quoted" -- cgit v1.3.1-4-g156e