codetools: parsing external keyword after forward class, bug #17197

git-svn-id: trunk@29224 -
This commit is contained in:
mattias 2011-01-27 20:07:27 +00:00
parent 6ce70fb207
commit 5cec794a58

View File

@ -3881,29 +3881,29 @@ begin
if CurPos.Flag=cafEND then begin
// read extra flags
ReadNextAtom;
if CurPos.Flag=cafSemicolon then
ReadNextAtom;
if UpAtomIs('DEPRECATED') then begin
ReadNextAtom;
if AtomIsStringConstant then
ReadConstant(true,false,[]);
end else if UpAtomIs('PLATFORM')
or UpAtomIs('UNIMPLEMENTED') or UpAtomIs('EXPERIMENTAL')
or UpAtomIs('LIBRARY')
then
ReadNextAtom;
if CurPos.Flag=cafSemicolon then
ReadNextAtom;
if UpAtomIs('EXTERNAL') then begin
ReadNextAtom;
if UpAtomIs('NAME') then begin
ReadNextAtom;
ReadConstant(true,false,[]);
end;
end;
if CurPos.Flag<>cafSemicolon then
UndoReadNextAtom;
end;
if CurPos.Flag=cafSemicolon then
ReadNextAtom;
if UpAtomIs('DEPRECATED') then begin
ReadNextAtom;
if AtomIsStringConstant then
ReadConstant(true,false,[]);
end else if UpAtomIs('PLATFORM')
or UpAtomIs('UNIMPLEMENTED') or UpAtomIs('EXPERIMENTAL')
or UpAtomIs('LIBRARY')
then
ReadNextAtom;
if CurPos.Flag=cafSemicolon then
ReadNextAtom;
if UpAtomIs('EXTERNAL') then begin
ReadNextAtom;
if UpAtomIs('NAME') then begin
ReadNextAtom;
ReadConstant(true,false,[]);
end;
end;
if CurPos.Flag<>cafSemicolon then
UndoReadNextAtom;
if ChildCreated then begin
// close class
CurNode.EndPos:=CurPos.EndPos;