mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-26 19:43:48 +02:00
codetools: fixed parsing record align, issue #40731
This commit is contained in:
parent
79825debe4
commit
f0652397b9
components/codetools
@ -4847,6 +4847,11 @@ begin
|
||||
ReadConstant(true,false,[]);
|
||||
end;
|
||||
end;
|
||||
// read record align.
|
||||
if (ClassDesc=ctnRecordType) and IsForward and UpAtomIs('ALIGN') then begin
|
||||
ReadNextAtom;
|
||||
ReadConstant(true,false,[]);
|
||||
end;
|
||||
if CurPos.Flag<>cafSemicolon then
|
||||
UndoReadNextAtom;
|
||||
// close class
|
||||
|
@ -45,6 +45,7 @@ type
|
||||
procedure TestAtomRing;
|
||||
procedure TestRecord_ClassOperators;
|
||||
procedure TestRecord_Nonkeywords;
|
||||
procedure TestRecord_Align;
|
||||
procedure TestDeprecated;
|
||||
procedure TestMissingGenericKeywordObjFPCFail;
|
||||
procedure TestParseGenericsDelphi;
|
||||
@ -403,6 +404,18 @@ begin
|
||||
ParseModule;
|
||||
end;
|
||||
|
||||
procedure TTestPascalParser.TestRecord_Align;
|
||||
begin
|
||||
StartProgram;
|
||||
Add([
|
||||
'type',
|
||||
' t = record',
|
||||
' pad: word;',
|
||||
' end align 16;',
|
||||
'begin']);
|
||||
ParseModule;
|
||||
end;
|
||||
|
||||
procedure TTestPascalParser.TestDeprecated;
|
||||
begin
|
||||
StartProgram;
|
||||
|
Loading…
Reference in New Issue
Block a user