mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-20 16:09:31 +02:00
fcl-passrc: fixed parsing ,^A
git-svn-id: trunk@43288 -
This commit is contained in:
parent
2e9e8a49be
commit
202284dbfa
@ -2420,16 +2420,15 @@ begin
|
||||
end;
|
||||
tkCaret:
|
||||
begin
|
||||
// is this still needed?
|
||||
// ^A..^_ characters. See #16341
|
||||
// Why is this still needed?
|
||||
// ^A..^_ characters
|
||||
NextToken;
|
||||
if not (length(CurTokenText)=1) or not (CurTokenText[1] in ['A'..'_']) then
|
||||
begin
|
||||
UngetToken;
|
||||
ParseExcExpectedIdentifier;
|
||||
end;
|
||||
Result:=CreatePrimitiveExpr(AParent,pekString, '^'+CurTokenText);
|
||||
exit;
|
||||
Last:=CreatePrimitiveExpr(AParent,pekString, '^'+CurTokenText);
|
||||
end;
|
||||
tkBraceOpen:
|
||||
begin
|
||||
|
@ -140,7 +140,7 @@ type
|
||||
tkIdentifier,
|
||||
tkString,
|
||||
tkNumber,
|
||||
tkChar,
|
||||
tkChar, // ^A .. ^Z
|
||||
// Simple (one-character) tokens
|
||||
tkBraceOpen, // '('
|
||||
tkBraceClose, // ')'
|
||||
|
@ -808,6 +808,7 @@ type
|
||||
Procedure TestArray_OpenArrayAsDynArraySetLengthFail;
|
||||
Procedure TestArray_OpenArrayAsDynArray;
|
||||
Procedure TestArray_OpenArrayDelphi;
|
||||
Procedure TestArray_OpenArrayChar;
|
||||
Procedure TestArray_CopyConcat;
|
||||
Procedure TestStaticArray_CopyConcat;// ToDo
|
||||
Procedure TestArray_CopyMismatchFail;
|
||||
@ -14713,6 +14714,21 @@ begin
|
||||
ParseProgram;
|
||||
end;
|
||||
|
||||
procedure TTestResolver.TestArray_OpenArrayChar;
|
||||
begin
|
||||
StartProgram(false);
|
||||
Add([
|
||||
'{$mode delphi}',
|
||||
'Function CharInSet(Ch: Char;Const CSet : array of char) : Boolean;',
|
||||
'begin',
|
||||
'end;',
|
||||
'var Key: Char;',
|
||||
'begin',
|
||||
' if CharInSet(Key, [^V, ^X, ^C]) then ;',
|
||||
'']);
|
||||
ParseProgram;
|
||||
end;
|
||||
|
||||
procedure TTestResolver.TestArray_CopyConcat;
|
||||
begin
|
||||
StartProgram(false);
|
||||
|
Loading…
Reference in New Issue
Block a user