mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-10-01 03:39:19 +02:00
parent
a39525f341
commit
a78a3f1171
@ -756,6 +756,15 @@ begin
|
|||||||
tkfalse, tktrue: x:=TBoolConstExpr.Create(pekBoolConst, CurToken=tktrue);
|
tkfalse, tktrue: x:=TBoolConstExpr.Create(pekBoolConst, CurToken=tktrue);
|
||||||
tknil: x:=TNilExpr.Create;
|
tknil: x:=TNilExpr.Create;
|
||||||
tkSquaredBraceOpen: x:=ParseParams(pekSet);
|
tkSquaredBraceOpen: x:=ParseParams(pekSet);
|
||||||
|
tkCaret: begin
|
||||||
|
// ^A..^_ characters. See #16341
|
||||||
|
NextToken;
|
||||||
|
if not (length(CurTokenText)=1) or not (CurTokenText[1] in ['A'..'_']) then begin
|
||||||
|
UngetToken;
|
||||||
|
ParseExc(SParserExpectedIdentifier);
|
||||||
|
end;
|
||||||
|
x:=TPrimitiveExpr.Create(pekString, '^'+CurTokenText);
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
ParseExc(SParserExpectedIdentifier);
|
ParseExc(SParserExpectedIdentifier);
|
||||||
end;
|
end;
|
||||||
|
@ -59,6 +59,7 @@ type
|
|||||||
tkSquaredBraceOpen, // '['
|
tkSquaredBraceOpen, // '['
|
||||||
tkSquaredBraceClose, // ']'
|
tkSquaredBraceClose, // ']'
|
||||||
tkCaret, // '^'
|
tkCaret, // '^'
|
||||||
|
tkBackslash, // '\'
|
||||||
// Two-character tokens
|
// Two-character tokens
|
||||||
tkDotDot, // '..'
|
tkDotDot, // '..'
|
||||||
tkAssign, // ':='
|
tkAssign, // ':='
|
||||||
@ -260,6 +261,7 @@ const
|
|||||||
'[',
|
'[',
|
||||||
']',
|
']',
|
||||||
'^',
|
'^',
|
||||||
|
'\',
|
||||||
'..',
|
'..',
|
||||||
':=',
|
':=',
|
||||||
'<>',
|
'<>',
|
||||||
@ -916,6 +918,11 @@ begin
|
|||||||
Inc(TokenStr);
|
Inc(TokenStr);
|
||||||
Result := tkCaret;
|
Result := tkCaret;
|
||||||
end;
|
end;
|
||||||
|
'\':
|
||||||
|
begin
|
||||||
|
Inc(TokenStr);
|
||||||
|
Result := tkBackslash;
|
||||||
|
end;
|
||||||
'{': // Multi-line comment
|
'{': // Multi-line comment
|
||||||
begin
|
begin
|
||||||
Inc(TokenStr);
|
Inc(TokenStr);
|
||||||
|
Loading…
Reference in New Issue
Block a user