From c169c2bf9299035b40f42c809c2de1e8ccbf36d8 Mon Sep 17 00:00:00 2001 From: Stephen Heumann Date: Sun, 13 Feb 2022 18:10:45 -0600 Subject: [PATCH] Fully prohibit redefinition of predefined macros. Code like the following was previously being allowed: #define __STDC__ /* no tokens */ --- Scanner.pas | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Scanner.pas b/Scanner.pas index bab212a..c3adff2 100644 --- a/Scanner.pas +++ b/Scanner.pas @@ -2552,6 +2552,8 @@ var mPtr^.algorithm := 0; if IsDefined(mPtr^.name) then begin mf := macroFound; + if mf^.readOnly then + goto 3; if mf^.parameters = mPtr^.parameters then begin tk1 := mf^.tokens; tk2 := mPtr^.tokens;