Implement __STDC_NO_...__ macros as specified by C11.
These indicate that various optional features of the C standard are not supported.
This commit is contained in:
parent
c0b2b44cad
commit
a62cbe531a
38
Scanner.pas
38
Scanner.pas
|
@ -1477,7 +1477,7 @@ if macro^.readOnly then begin {handle special macros}
|
|||
|
||||
5: begin {__STDC__}
|
||||
token.kind := intConst; {__ORCAC__}
|
||||
token.numString := @oneStr;
|
||||
token.numString := @oneStr; {__STDC_NO_...__}
|
||||
token.class := intConstant;
|
||||
token.ival := 1;
|
||||
oneStr := '1';
|
||||
|
@ -3752,6 +3752,42 @@ mp^.algorithm := 6;
|
|||
bp := pointer(ord4(macros) + hash(mp^.name));
|
||||
mp^.next := bp^;
|
||||
bp^ := mp;
|
||||
new(mp); {__STDC_NO_ATOMICS__}
|
||||
mp^.name := @'__STDC_NO_ATOMICS__';
|
||||
mp^.parameters := -1;
|
||||
mp^.tokens := nil;
|
||||
mp^.readOnly := true;
|
||||
mp^.algorithm := 5;
|
||||
bp := pointer(ord4(macros) + hash(mp^.name));
|
||||
mp^.next := bp^;
|
||||
bp^ := mp;
|
||||
new(mp); {__STDC_NO_COMPLEX__}
|
||||
mp^.name := @'__STDC_NO_COMPLEX__';
|
||||
mp^.parameters := -1;
|
||||
mp^.tokens := nil;
|
||||
mp^.readOnly := true;
|
||||
mp^.algorithm := 5;
|
||||
bp := pointer(ord4(macros) + hash(mp^.name));
|
||||
mp^.next := bp^;
|
||||
bp^ := mp;
|
||||
new(mp); {__STDC_NO_THREADS__}
|
||||
mp^.name := @'__STDC_NO_THREADS__';
|
||||
mp^.parameters := -1;
|
||||
mp^.tokens := nil;
|
||||
mp^.readOnly := true;
|
||||
mp^.algorithm := 5;
|
||||
bp := pointer(ord4(macros) + hash(mp^.name));
|
||||
mp^.next := bp^;
|
||||
bp^ := mp;
|
||||
new(mp); {__STDC_NO_VLA__}
|
||||
mp^.name := @'__STDC_NO_VLA__';
|
||||
mp^.parameters := -1;
|
||||
mp^.tokens := nil;
|
||||
mp^.readOnly := true;
|
||||
mp^.algorithm := 5;
|
||||
bp := pointer(ord4(macros) + hash(mp^.name));
|
||||
mp^.next := bp^;
|
||||
bp^ := mp;
|
||||
SetDateTime; {set up the macro date/time strings}
|
||||
{set up the version string}
|
||||
versionStrL := pointer(GMalloc(3 + length(versionStr)));
|
||||
|
|
Loading…
Reference in New Issue