summaryrefslogtreecommitdiff
path: root/basic/source/comp/dim.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basic/source/comp/dim.cxx')
-rwxr-xr-x[-rw-r--r--]basic/source/comp/dim.cxx185
1 files changed, 94 insertions, 91 deletions
diff --git a/basic/source/comp/dim.cxx b/basic/source/comp/dim.cxx
index 88ad0f8c25f1..a24f4ea9e7e3 100644..100755
--- a/basic/source/comp/dim.cxx
+++ b/basic/source/comp/dim.cxx
@@ -40,7 +40,7 @@ SbxObject* cloneTypeObjectImpl( const SbxObject& rTypeObj );
// Return-value: a new instance, which were inserted and then deleted.
// Array-Indexex were returned as SbiDimList
-SbiSymDef* SbiParser::VarDecl( SbiDimList** ppDim, BOOL bStatic, BOOL bConst )
+SbiSymDef* SbiParser::VarDecl( SbiDimList** ppDim, sal_Bool bStatic, sal_Bool bConst )
{
bool bWithEvents = false;
if( Peek() == WITHEVENTS )
@@ -75,7 +75,7 @@ SbiSymDef* SbiParser::VarDecl( SbiDimList** ppDim, BOOL bStatic, BOOL bConst )
// Resolving of a AS-Type-Declaration
// The data type were inserted into the handed over variable
-void SbiParser::TypeDecl( SbiSymDef& rDef, BOOL bAsNewAlreadyParsed )
+void SbiParser::TypeDecl( SbiSymDef& rDef, sal_Bool bAsNewAlreadyParsed )
{
SbxDataType eType = rDef.GetType();
if( bAsNewAlreadyParsed || Peek() == AS )
@@ -196,34 +196,34 @@ void SbiParser::TypeDecl( SbiSymDef& rDef, BOOL bAsNewAlreadyParsed )
void SbiParser::Dim()
{
- DefVar( _DIM, ( pProc && bVBASupportOn ) ? pProc->IsStatic() : FALSE );
+ DefVar( _DIM, ( pProc && bVBASupportOn ) ? pProc->IsStatic() : sal_False );
}
-void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
+void SbiParser::DefVar( SbiOpcode eOp, sal_Bool bStatic )
{
SbiSymPool* pOldPool = pPool;
- BOOL bSwitchPool = FALSE;
- BOOL bPersistantGlobal = FALSE;
+ sal_Bool bSwitchPool = sal_False;
+ sal_Bool bPersistantGlobal = sal_False;
SbiToken eFirstTok = eCurTok;
if( pProc && ( eCurTok == GLOBAL || eCurTok == PUBLIC || eCurTok == PRIVATE ) )
Error( SbERR_NOT_IN_SUBR, eCurTok );
if( eCurTok == PUBLIC || eCurTok == GLOBAL )
{
- bSwitchPool = TRUE; // at the right moment switch to the global pool
+ bSwitchPool = sal_True; // at the right moment switch to the global pool
if( eCurTok == GLOBAL )
- bPersistantGlobal = TRUE;
+ bPersistantGlobal = sal_True;
}
// behavior in VBA is that a module scope variable's lifetime is
// tied to the document. e.g. a module scope variable is global
if( GetBasic()->IsDocBasic() && bVBASupportOn && !pProc )
- bPersistantGlobal = TRUE;
+ bPersistantGlobal = sal_True;
// PRIVATE is a synonymous for DIM
// _CONST_?
- BOOL bConst = FALSE;
+ sal_Bool bConst = sal_False;
if( eCurTok == _CONST_ )
- bConst = TRUE;
+ bConst = sal_True;
else if( Peek() == _CONST_ )
- Next(), bConst = TRUE;
+ Next(), bConst = sal_True;
// #110004 It can also be a sub/function
if( !bConst && (eCurTok == SUB || eCurTok == FUNCTION || eCurTok == PROPERTY ||
@@ -244,10 +244,10 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
if( bNewGblDefs && nGblChain == 0 )
{
nGblChain = aGen.Gen( _JUMP, 0 );
- bNewGblDefs = FALSE;
+ bNewGblDefs = sal_False;
}
Next();
- DefProc( FALSE, bPrivate );
+ DefProc( sal_False, bPrivate );
return;
}
else if( eCurTok == ENUM )
@@ -294,14 +294,14 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
SbiDimList* pDim;
// From 1997-07-09, #40689, Statics -> Modul-Initialising, skip in Sub
- UINT32 nEndOfStaticLbl = 0;
+ sal_uInt32 nEndOfStaticLbl = 0;
if( !bVBASupportOn && bStatic )
{
nEndOfStaticLbl = aGen.Gen( _JUMP, 0 );
aGen.Statement(); // catch up on static here
}
- BOOL bDefined = FALSE;
+ sal_Bool bDefined = sal_False;
while( ( pDef = VarDecl( &pDim, bStatic, bConst ) ) != NULL )
{
EnableErrors();
@@ -310,12 +310,12 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
pPool = &aGlobals;
SbiSymDef* pOld = pPool->Find( pDef->GetName() );
// From 1996-03-31, #25651#, search also in the Runtime-Library
- BOOL bRtlSym = FALSE;
+ sal_Bool bRtlSym = sal_False;
if( !pOld )
{
pOld = CheckRTLForSym( pDef->GetName(), SbxVARIANT );
if( pOld )
- bRtlSym = TRUE;
+ bRtlSym = sal_True;
}
if( pOld && !(eOp == _REDIM || eOp == _REDIMP) )
{
@@ -324,7 +324,7 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
}
if( pOld )
{
- bDefined = TRUE;
+ bDefined = sal_True;
// always an error at a RTL-S
if( !bRtlSym && (eOp == _REDIM || eOp == _REDIMP) )
{
@@ -370,17 +370,20 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
}
global: aGen.BackChain( nGblChain );
nGblChain = 0;
- bGblDefs = bNewGblDefs = TRUE;
+ bGblDefs = bNewGblDefs = sal_True;
break;
default: eOp2 = _LOCAL;
}
- UINT32 nOpnd2 = sal::static_int_cast< UINT16 >( pDef->GetType() );
+ sal_uInt32 nOpnd2 = sal::static_int_cast< sal_uInt16 >( pDef->GetType() );
if( pDef->IsWithEvents() )
nOpnd2 |= SBX_TYPE_WITH_EVENTS_FLAG;
+ if( bCompatible && pDef->IsNew() )
+ nOpnd2 |= SBX_TYPE_DIM_AS_NEW_FLAG;
+
short nFixedStringLength = pDef->GetFixedStringLength();
if( nFixedStringLength >= 0 )
- nOpnd2 |= (SBX_FIXED_LEN_STRING_FLAG + (UINT32(nFixedStringLength) << 17)); // len = all bits above 0x10000
+ nOpnd2 |= (SBX_FIXED_LEN_STRING_FLAG + (sal_uInt32(nFixedStringLength) << 17)); // len = all bits above 0x10000
aGen.Gen( eOp2, pDef->GetId(), nOpnd2 );
}
@@ -490,10 +493,10 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
}
pDef->SetDims( pDim->GetDims() );
if( bPersistantGlobal )
- pDef->SetGlobal( TRUE );
+ pDef->SetGlobal( sal_True );
SbiExpression aExpr( this, *pDef, pDim );
aExpr.Gen();
- pDef->SetGlobal( FALSE );
+ pDef->SetGlobal( sal_False );
aGen.Gen( (eOp == _STATIC) ? _DIM : eOp );
}
}
@@ -518,7 +521,7 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
{
// maintain the global chain
nGblChain = aGen.Gen( _JUMP, 0 );
- bGblDefs = bNewGblDefs = TRUE;
+ bGblDefs = bNewGblDefs = sal_True;
// Register for Sub a jump to the end of statics
aGen.BackChain( nEndOfStaticLbl );
@@ -531,7 +534,7 @@ void SbiParser::DefVar( SbiOpcode eOp, BOOL bStatic )
void SbiParser::ReDim()
{
- DefVar( _REDIM, ( pProc && bVBASupportOn ) ? pProc->IsStatic() : FALSE );
+ DefVar( _REDIM, ( pProc && bVBASupportOn ) ? pProc->IsStatic() : sal_False );
}
// ERASE array, ...
@@ -551,10 +554,10 @@ void SbiParser::Erase()
void SbiParser::Type()
{
- DefType( FALSE );
+ DefType( sal_False );
}
-void SbiParser::DefType( BOOL bPrivate )
+void SbiParser::DefType( sal_Bool bPrivate )
{
// TODO: Use bPrivate
(void)bPrivate;
@@ -573,7 +576,7 @@ void SbiParser::DefType( BOOL bPrivate )
SbiSymDef* pElem;
SbiDimList* pDim = NULL;
- BOOL bDone = FALSE;
+ sal_Bool bDone = sal_False;
while( !bDone && !IsEof() )
{
@@ -581,7 +584,7 @@ void SbiParser::DefType( BOOL bPrivate )
{
case ENDTYPE :
pElem = NULL;
- bDone = TRUE;
+ bDone = sal_True;
Next();
break;
@@ -593,9 +596,9 @@ void SbiParser::DefType( BOOL bPrivate )
default:
pDim = NULL;
- pElem = VarDecl(&pDim,FALSE,FALSE);
+ pElem = VarDecl(&pDim,sal_False,sal_False);
if( !pElem )
- bDone = TRUE; // Error occurred
+ bDone = sal_True; // Error occurred
}
if( pElem )
{
@@ -616,8 +619,8 @@ void SbiParser::DefType( BOOL bPrivate )
for ( short i=0; i<pDim->GetSize();++i )
{
- INT32 ub = -1;
- INT32 lb = nBase;
+ sal_Int32 ub = -1;
+ sal_Int32 lb = nBase;
SbiExprNode* pNode = pDim->Get(i)->GetExprNode();
ub = pNode->GetNumber();
if ( !pDim->Get( i )->IsBased() ) // each dim is low/up
@@ -636,7 +639,7 @@ void SbiParser::DefType( BOOL bPrivate )
}
else
pArray->unoAddDim( 0, -1 ); // variant array
- USHORT nSavFlags = pTypeElem->GetFlags();
+ sal_uInt16 nSavFlags = pTypeElem->GetFlags();
// need to reset the FIXED flag
// when calling PutObject ( because the type will not match Object )
pTypeElem->ResetFlag( SBX_FIXED );
@@ -646,7 +649,7 @@ void SbiParser::DefType( BOOL bPrivate )
// Nested user type?
if( eElemType == SbxOBJECT )
{
- USHORT nElemTypeId = pElem->GetTypeId();
+ sal_uInt16 nElemTypeId = pElem->GetTypeId();
if( nElemTypeId != 0 )
{
String aTypeName( aGblStrings.Find( nElemTypeId ) );
@@ -676,10 +679,10 @@ void SbiParser::DefType( BOOL bPrivate )
void SbiParser::Enum()
{
- DefEnum( FALSE );
+ DefEnum( sal_False );
}
-void SbiParser::DefEnum( BOOL bPrivate )
+void SbiParser::DefEnum( sal_Bool bPrivate )
{
// Read a the new Token. It had to be a symbol
if (!TestSymbol())
@@ -698,7 +701,7 @@ void SbiParser::DefEnum( BOOL bPrivate )
SbiSymDef* pElem;
SbiDimList* pDim;
- BOOL bDone = FALSE;
+ sal_Bool bDone = sal_False;
// Starting with -1 to make first default value 0 after ++
sal_Int32 nCurrentEnumValue = -1;
@@ -708,7 +711,7 @@ void SbiParser::DefEnum( BOOL bPrivate )
{
case ENDENUM :
pElem = NULL;
- bDone = TRUE;
+ bDone = sal_True;
Next();
break;
@@ -721,20 +724,20 @@ void SbiParser::DefEnum( BOOL bPrivate )
default:
{
// TODO: Check existing!
- BOOL bDefined = FALSE;
+ sal_Bool bDefined = sal_False;
pDim = NULL;
- pElem = VarDecl( &pDim, FALSE, TRUE );
+ pElem = VarDecl( &pDim, sal_False, sal_True );
if( !pElem )
{
- bDone = TRUE; // Error occurred
+ bDone = sal_True; // Error occurred
break;
}
else if( pDim )
{
delete pDim;
Error( SbERR_SYNTAX );
- bDone = TRUE; // Error occurred
+ bDone = sal_True; // Error occurred
break;
}
@@ -764,7 +767,7 @@ void SbiParser::DefEnum( BOOL bPrivate )
if( pOld )
{
Error( SbERR_VAR_DEFINED, pElem->GetName() );
- bDone = TRUE; // Error occurred
+ bDone = sal_True; // Error occurred
break;
}
@@ -775,13 +778,13 @@ void SbiParser::DefEnum( BOOL bPrivate )
SbiOpcode eOp = _GLOBAL;
aGen.BackChain( nGblChain );
nGblChain = 0;
- bGblDefs = bNewGblDefs = TRUE;
+ bGblDefs = bNewGblDefs = sal_True;
aGen.Gen(
eOp, pElem->GetId(),
- sal::static_int_cast< UINT16 >( pElem->GetType() ) );
+ sal::static_int_cast< sal_uInt16 >( pElem->GetType() ) );
aVar.Gen();
- USHORT nStringId = aGen.GetParser()->aGblStrings.Add( nCurrentEnumValue, SbxLONG );
+ sal_uInt16 nStringId = aGen.GetParser()->aGblStrings.Add( nCurrentEnumValue, SbxLONG );
aGen.Gen( _NUMBER, nStringId );
aGen.Gen( _PUTC );
}
@@ -812,10 +815,10 @@ void SbiParser::DefEnum( BOOL bPrivate )
// the first Token is already read in (SUB/FUNCTION)
// xxx Name [LIB "name"[ALIAS "name"]][(Parameter)][AS TYPE]
-SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
+SbiProcDef* SbiParser::ProcDecl( sal_Bool bDecl )
{
- BOOL bFunc = BOOL( eCurTok == FUNCTION );
- BOOL bProp = BOOL( eCurTok == GET || eCurTok == SET || eCurTok == LET );
+ sal_Bool bFunc = sal_Bool( eCurTok == FUNCTION );
+ sal_Bool bProp = sal_Bool( eCurTok == GET || eCurTok == SET || eCurTok == LET );
if( !TestSymbol() ) return NULL;
String aName( aSym );
SbxDataType eType = eScanType;
@@ -850,7 +853,7 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
Error( SbERR_UNEXPECTED, ALIAS );
if( pDef->IsCdecl() )
Error( SbERR_UNEXPECTED, _CDECL_ );
- pDef->SetCdecl( FALSE );
+ pDef->SetCdecl( sal_False );
pDef->GetLib().Erase();
pDef->GetAlias().Erase();
}
@@ -861,7 +864,7 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
Error( SbERR_UNEXPECTED, ALIAS );
if( pDef->IsCdecl() )
Error( SbERR_UNEXPECTED, _CDECL_ );
- pDef->SetCdecl( FALSE );
+ pDef->SetCdecl( sal_False );
pDef->GetAlias().Erase();
}
// Brackets?
@@ -872,23 +875,23 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
Next();
else
for(;;) {
- BOOL bByVal = FALSE;
- BOOL bOptional = FALSE;
- BOOL bParamArray = FALSE;
+ sal_Bool bByVal = sal_False;
+ sal_Bool bOptional = sal_False;
+ sal_Bool bParamArray = sal_False;
while( Peek() == BYVAL || Peek() == BYREF || Peek() == _OPTIONAL_ )
{
- if ( Peek() == BYVAL ) Next(), bByVal = TRUE;
- else if ( Peek() == BYREF ) Next(), bByVal = FALSE;
- else if ( Peek() == _OPTIONAL_ ) Next(), bOptional = TRUE;
+ if ( Peek() == BYVAL ) Next(), bByVal = sal_True;
+ else if ( Peek() == BYREF ) Next(), bByVal = sal_False;
+ else if ( Peek() == _OPTIONAL_ ) Next(), bOptional = sal_True;
}
if( bCompatible && Peek() == PARAMARRAY )
{
if( bByVal || bOptional )
Error( SbERR_UNEXPECTED, PARAMARRAY );
Next();
- bParamArray = TRUE;
+ bParamArray = sal_True;
}
- SbiSymDef* pPar = VarDecl( NULL, FALSE, FALSE );
+ SbiSymDef* pPar = VarDecl( NULL, sal_False, sal_False );
if( !pPar )
break;
if( bByVal )
@@ -901,13 +904,13 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
SbiToken eTok = Next();
if( eTok != COMMA && eTok != RPAREN )
{
- BOOL bError2 = TRUE;
+ sal_Bool bError2 = sal_True;
if( bOptional && bCompatible && eTok == EQ )
{
SbiConstExpression* pDefaultExpr = new SbiConstExpression( this );
SbxDataType eType2 = pDefaultExpr->GetType();
- USHORT nStringId;
+ sal_uInt16 nStringId;
if( eType2 == SbxSTRING )
nStringId = aGblStrings.Add( pDefaultExpr->GetString() );
else
@@ -918,7 +921,7 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
eTok = Next();
if( eTok == COMMA || eTok == RPAREN )
- bError2 = FALSE;
+ bError2 = sal_False;
}
if( bError2 )
{
@@ -945,10 +948,10 @@ SbiProcDef* SbiParser::ProcDecl( BOOL bDecl )
void SbiParser::Declare()
{
- DefDeclare( FALSE );
+ DefDeclare( sal_False );
}
-void SbiParser::DefDeclare( BOOL bPrivate )
+void SbiParser::DefDeclare( sal_Bool bPrivate )
{
Next();
if( eCurTok != SUB && eCurTok != FUNCTION )
@@ -957,7 +960,7 @@ void SbiParser::DefDeclare( BOOL bPrivate )
{
bool bFunction = (eCurTok == FUNCTION);
- SbiProcDef* pDef = ProcDecl( TRUE );
+ SbiProcDef* pDef = ProcDecl( sal_True );
if( pDef )
{
if( !pDef->GetLib().Len() )
@@ -990,39 +993,39 @@ void SbiParser::DefDeclare( BOOL bPrivate )
if( bNewGblDefs && nGblChain == 0 )
{
nGblChain = aGen.Gen( _JUMP, 0 );
- bNewGblDefs = FALSE;
+ bNewGblDefs = sal_False;
}
- USHORT nSavLine = nLine;
+ sal_uInt16 nSavLine = nLine;
aGen.Statement();
pDef->Define();
pDef->SetLine1( nSavLine );
pDef->SetLine2( nSavLine );
SbiSymPool& rPool = pDef->GetParams();
- USHORT nParCount = rPool.GetSize();
+ sal_uInt16 nParCount = rPool.GetSize();
SbxDataType eType = pDef->GetType();
if( bFunction )
- aGen.Gen( _PARAM, 0, sal::static_int_cast< UINT16 >( eType ) );
+ aGen.Gen( _PARAM, 0, sal::static_int_cast< sal_uInt16 >( eType ) );
if( nParCount > 1 )
{
aGen.Gen( _ARGC );
- for( USHORT i = 1 ; i < nParCount ; ++i )
+ for( sal_uInt16 i = 1 ; i < nParCount ; ++i )
{
SbiSymDef* pParDef = rPool.Get( i );
SbxDataType eParType = pParDef->GetType();
- aGen.Gen( _PARAM, i, sal::static_int_cast< UINT16 >( eParType ) );
+ aGen.Gen( _PARAM, i, sal::static_int_cast< sal_uInt16 >( eParType ) );
aGen.Gen( _ARGV );
- USHORT nTyp = sal::static_int_cast< USHORT >( pParDef->GetType() );
+ sal_uInt16 nTyp = sal::static_int_cast< sal_uInt16 >( pParDef->GetType() );
if( pParDef->IsByVal() )
{
// Reset to avoid additional byval in call to wrapper function
- pParDef->SetByVal( FALSE );
+ pParDef->SetByVal( sal_False );
nTyp |= 0x8000;
}
aGen.Gen( _ARGTYP, nTyp );
@@ -1032,12 +1035,12 @@ void SbiParser::DefDeclare( BOOL bPrivate )
aGen.Gen( _LIB, aGblStrings.Add( pDef->GetLib() ) );
SbiOpcode eOp = pDef->IsCdecl() ? _CALLC : _CALL;
- USHORT nId = pDef->GetId();
+ sal_uInt16 nId = pDef->GetId();
if( pDef->GetAlias().Len() )
nId = ( nId & 0x8000 ) | aGblStrings.Add( pDef->GetAlias() );
if( nParCount > 1 )
nId |= 0x8000;
- aGen.Gen( eOp, nId, sal::static_int_cast< UINT16 >( eType ) );
+ aGen.Gen( eOp, nId, sal::static_int_cast< sal_uInt16 >( eType ) );
if( bFunction )
aGen.Gen( _PUT );
@@ -1079,18 +1082,18 @@ void SbiParser::Call()
void SbiParser::SubFunc()
{
- DefProc( FALSE, FALSE );
+ DefProc( sal_False, sal_False );
}
// Read in of a procedure
-BOOL runsInSetup( void );
+sal_Bool runsInSetup( void );
-void SbiParser::DefProc( BOOL bStatic, BOOL bPrivate )
+void SbiParser::DefProc( sal_Bool bStatic, sal_Bool bPrivate )
{
- USHORT l1 = nLine, l2 = nLine;
- BOOL bSub = BOOL( eCurTok == SUB );
- BOOL bProperty = BOOL( eCurTok == PROPERTY );
+ sal_uInt16 l1 = nLine, l2 = nLine;
+ sal_Bool bSub = sal_Bool( eCurTok == SUB );
+ sal_Bool bProperty = sal_Bool( eCurTok == PROPERTY );
PropertyMode ePropertyMode = PROPERTY_MODE_NONE;
if( bProperty )
{
@@ -1106,7 +1109,7 @@ void SbiParser::DefProc( BOOL bStatic, BOOL bPrivate )
}
SbiToken eExit = eCurTok;
- SbiProcDef* pDef = ProcDecl( FALSE );
+ SbiProcDef* pDef = ProcDecl( sal_False );
if( !pDef )
return;
pDef->setPropertyMode( ePropertyMode );
@@ -1160,13 +1163,13 @@ void SbiParser::DefProc( BOOL bStatic, BOOL bPrivate )
if( bStatic )
{
if ( bVBASupportOn )
- pProc->SetStatic( TRUE );
+ pProc->SetStatic( sal_True );
else
Error( SbERR_NOT_IMPLEMENTED ); // STATIC SUB ...
}
else
{
- pProc->SetStatic( FALSE );
+ pProc->SetStatic( sal_False );
}
// Normal case: Local variable->parameter->global variable
pProc->GetLocals().SetParent( &pProc->GetParams() );
@@ -1191,10 +1194,10 @@ void SbiParser::DefProc( BOOL bStatic, BOOL bPrivate )
void SbiParser::Static()
{
- DefStatic( FALSE );
+ DefStatic( sal_False );
}
-void SbiParser::DefStatic( BOOL bPrivate )
+void SbiParser::DefStatic( sal_Bool bPrivate )
{
switch( Peek() )
{
@@ -1206,10 +1209,10 @@ void SbiParser::DefStatic( BOOL bPrivate )
if( bNewGblDefs && nGblChain == 0 )
{
nGblChain = aGen.Gen( _JUMP, 0 );
- bNewGblDefs = FALSE;
+ bNewGblDefs = sal_False;
}
Next();
- DefProc( TRUE, bPrivate );
+ DefProc( sal_True, bPrivate );
break;
default: {
if( !pProc )
@@ -1217,7 +1220,7 @@ void SbiParser::DefStatic( BOOL bPrivate )
// Reset the Pool, so that STATIC-Declarations go into the
// global Pool
SbiSymPool* p = pPool; pPool = &aPublics;
- DefVar( _STATIC, TRUE );
+ DefVar( _STATIC, sal_True );
pPool = p;
} break;
}