basic/source/comp/exprgen.cxx | 14 +++++++------- basic/source/comp/exprtree.cxx | 10 ++++------ basic/source/inc/expr.hxx | 6 ++---- 3 files changed, 13 insertions(+), 17 deletions(-)
New commits: commit 49b5eed56c470975927bb7b0328337ab8a76a910 Author: Arnaud Versini <arnaud.vers...@gmail.com> Date: Sun Jan 17 14:28:13 2016 +0100 BASIC : Remove SbiExprList::pParser Change-Id: Ib9386d97ddb12f148cf76dc71aa8c41003286f50 Reviewed-on: https://gerrit.libreoffice.org/21534 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Noel Grandin <noelgran...@gmail.com> diff --git a/basic/source/comp/exprgen.cxx b/basic/source/comp/exprgen.cxx index ce6ff93..96efddb 100644 --- a/basic/source/comp/exprgen.cxx +++ b/basic/source/comp/exprgen.cxx @@ -184,7 +184,7 @@ void SbiExprNode::GenElement( SbiCodeGen& rGen, SbiOpcode eOp ) if( aVar.pPar && aVar.pPar->GetSize() ) { nId |= 0x8000; - aVar.pPar->Gen(); + aVar.pPar->Gen(rGen); } rGen.Gen( eOp, nId, sal::static_int_cast< sal_uInt16 >( GetType() ) ); @@ -193,7 +193,7 @@ void SbiExprNode::GenElement( SbiCodeGen& rGen, SbiOpcode eOp ) { for( auto& pExprList: *aVar.pvMorePar ) { - pExprList->Gen(); + pExprList->Gen(rGen); rGen.Gen( _ARRAYACCESS ); } } @@ -203,11 +203,11 @@ void SbiExprNode::GenElement( SbiCodeGen& rGen, SbiOpcode eOp ) // The first element remain available for return value etc. // See as well SbiProcDef::SbiProcDef() in symtbl.cxx -void SbiExprList::Gen() +void SbiExprList::Gen(SbiCodeGen& rGen) { if( pFirst ) { - pParser->aGen.Gen( _ARGC ); + rGen.Gen( _ARGC ); // Type adjustment at DECLARE sal_uInt16 nCount = 1; @@ -217,8 +217,8 @@ void SbiExprList::Gen() if( !pExpr->GetName().isEmpty() ) { // named arg - sal_uInt16 nSid = pParser->aGblStrings.Add( pExpr->GetName() ); - pParser->aGen.Gen( _ARGN, nSid ); + sal_uInt16 nSid = rGen.GetParser()->aGblStrings.Add( pExpr->GetName() ); + rGen.Gen( _ARGN, nSid ); /* TODO: Check after Declare concept change // From 1996-01-10: Type adjustment at named -> search suitable parameter @@ -247,7 +247,7 @@ void SbiExprList::Gen() } else { - pParser->aGen.Gen( _ARGV ); + rGen.Gen( _ARGV ); } } } diff --git a/basic/source/comp/exprtree.cxx b/basic/source/comp/exprtree.cxx index b6ed8da..ba99c00 100644 --- a/basic/source/comp/exprtree.cxx +++ b/basic/source/comp/exprtree.cxx @@ -920,9 +920,8 @@ short SbiConstExpression::GetShortValue() |* ***************************************************************************/ -SbiExprList::SbiExprList( SbiParser* p ) +SbiExprList::SbiExprList( ) { - pParser = p; pFirst = nullptr; nExpr = nDim = 0; @@ -984,8 +983,7 @@ void SbiExprList::addExpression( SbiExpression* pExpr ) // #i79918/#i80532: bConst has never been set to true // -> reused as bStandaloneExpression //SbiParameters::SbiParameters( SbiParser* p, sal_Bool bConst, sal_Bool bPar) : -SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPar) : - SbiExprList( p ) +SbiParameters::SbiParameters( SbiParser* pParser, bool bStandaloneExpression, bool bPar) { if( !bPar ) { @@ -1150,9 +1148,9 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa // A list of array dimensions is parsed. The expressions are tested for being // numeric. The bCONST-Bit is reset when all expressions are Integer constants. -SbiDimList::SbiDimList( SbiParser* p ) : SbiExprList( p ) +SbiDimList::SbiDimList( SbiParser* pParser ) { - bConst = true; + bool bConst = true;// true: everything integer constants if( pParser->Next() != LPAREN ) { diff --git a/basic/source/inc/expr.hxx b/basic/source/inc/expr.hxx index 6efa150..7bcea84 100644 --- a/basic/source/inc/expr.hxx +++ b/basic/source/inc/expr.hxx @@ -223,21 +223,20 @@ public: // numeric constant class SbiExprList { // base class for parameters and dims protected: - SbiParser* pParser; SbiExpression* pFirst; short nExpr; short nDim; bool bError; bool bBracket; public: - SbiExprList( SbiParser* ); + SbiExprList(); virtual ~SbiExprList(); bool IsBracket() { return bBracket; } bool IsValid() { return !bError; } short GetSize() { return nExpr; } short GetDims() { return nDim; } SbiExpression* Get( short ); - void Gen(); // code generation + void Gen( SbiCodeGen& rGen); // code generation void addExpression( SbiExpression* pExpr ); }; @@ -247,7 +246,6 @@ public: }; class SbiDimList : public SbiExprList { - bool bConst; // true: everything integer constants public: SbiDimList( SbiParser* ); // parsing Ctor }; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits