summaryrefslogtreecommitdiff
path: root/basic/source/comp/dim.cxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2003-03-18 15:28:40 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2003-03-18 15:28:40 +0000
commit626e99d76d01f7c147a914a2a32b9da9f1e5d850 (patch)
tree3d23ce1d9b6a3668984e3cc031af896393204b06 /basic/source/comp/dim.cxx
parentc1815f96f13f18bdabdbf2ab1a1ee63472b5305f (diff)
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'basic/source/comp/dim.cxx')
-rw-r--r--basic/source/comp/dim.cxx26
1 files changed, 20 insertions, 6 deletions
diff --git a/basic/source/comp/dim.cxx b/basic/source/comp/dim.cxx
index da946bd906..3413dec0cd 100644
--- a/basic/source/comp/dim.cxx
+++ b/basic/source/comp/dim.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: dim.cxx,v $
*
- * $Revision: 1.8 $
+ * $Revision: 1.9 $
*
- * last change: $Author: ab $ $Date: 2002-08-12 12:04:52 $
+ * last change: $Author: hr $ $Date: 2003-03-18 16:28:34 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -329,10 +329,24 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
if( pDim )
{
- pDef->SetDims( pDim->GetDims() );
- SbiExpression aExpr( this, *pDef, pDim );
- aExpr.Gen();
- aGen.Gen( _DCREATE, pDef->GetId(), pDef->GetTypeId() );
+ if( eOp == _REDIMP )
+ {
+ SbiExpression aExpr( this, *pDef, NULL );
+ aExpr.Gen();
+ aGen.Gen( _REDIMP_ERASE );
+
+ pDef->SetDims( pDim->GetDims() );
+ SbiExpression aExpr2( this, *pDef, pDim );
+ aExpr2.Gen();
+ aGen.Gen( _DCREATE_REDIMP, pDef->GetId(), pDef->GetTypeId() );
+ }
+ else
+ {
+ pDef->SetDims( pDim->GetDims() );
+ SbiExpression aExpr( this, *pDef, pDim );
+ aExpr.Gen();
+ aGen.Gen( _DCREATE, pDef->GetId(), pDef->GetTypeId() );
+ }
}
else
{