From 1ffc5f49aad218ed4654d71c4083640427367e8e Mon Sep 17 00:00:00 2001 From: Mattias Gaertner Date: Mon, 6 Jan 2020 16:53:01 +0000 Subject: [PATCH] fcl-passrc: case statement: consistent calling AddExpression git-svn-id: trunk@43872 - --- packages/fcl-passrc/src/pastree.pp | 5 +++-- packages/fcl-passrc/src/pparser.pp | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/fcl-passrc/src/pastree.pp b/packages/fcl-passrc/src/pastree.pp index b709a0b627..b294459d28 100644 --- a/packages/fcl-passrc/src/pastree.pp +++ b/packages/fcl-passrc/src/pastree.pp @@ -1557,6 +1557,7 @@ type end; { TPasImplAssign } + TAssignKind = (akDefault,akAdd,akMinus,akMul,akDivision); TPasImplAssign = class (TPasImplStatement) public @@ -1594,8 +1595,8 @@ type procedure ForEachCall(const aMethodCall: TOnForEachPasElement; const Arg: Pointer); override; public - FinallyExcept: TPasImplTryHandler; - ElseBranch: TPasImplTryExceptElse; + FinallyExcept: TPasImplTryHandler; // not in Elements + ElseBranch: TPasImplTryExceptElse; // not in Elements end; TPasImplTryHandler = class(TPasImplBlock) diff --git a/packages/fcl-passrc/src/pparser.pp b/packages/fcl-passrc/src/pparser.pp index 20e09829c4..a9f55be74d 100644 --- a/packages/fcl-passrc/src/pparser.pp +++ b/packages/fcl-passrc/src/pparser.pp @@ -5924,9 +5924,9 @@ begin CloseBlock; CloseStatement(false); end; - // Case ... else without semicolon in front. end else if (CurBlock is TPasImplCaseStatement) then begin + // Case ... else without semicolon in front. UngetToken; CloseStatement(False); break; @@ -6118,7 +6118,7 @@ begin //writeln(i,'CASE value="',Expr,'" Token=',CurTokenText); if CurBlock is TPasImplCaseStatement then begin - TPasImplCaseStatement(CurBlock).Expressions.Add(Left); + TPasImplCaseStatement(CurBlock).AddExpression(Left); Left:=nil; end else