summaryrefslogtreecommitdiff
path: root/basic/source/comp/exprtree.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basic/source/comp/exprtree.cxx')
-rw-r--r--basic/source/comp/exprtree.cxx101
1 files changed, 44 insertions, 57 deletions
diff --git a/basic/source/comp/exprtree.cxx b/basic/source/comp/exprtree.cxx
index 8cf48fd87b2d..1fa6140a0e3b 100644
--- a/basic/source/comp/exprtree.cxx
+++ b/basic/source/comp/exprtree.cxx
@@ -1,61 +1,35 @@
/*************************************************************************
*
- * $RCSfile: exprtree.cxx,v $
- *
- * $Revision: 1.9 $
- *
- * last change: $Author: hr $ $Date: 2005-09-29 12:46:41 $
- *
- * The Contents of this file are made available subject to the terms of
- * either of the following licenses
- *
- * - GNU Lesser General Public License Version 2.1
- * - Sun Industry Standards Source License Version 1.1
- *
- * Sun Microsystems Inc., October, 2000
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2000 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ * OpenOffice.org - a multi-platform office productivity suite
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
+ * $RCSfile: exprtree.cxx,v $
*
+ * $Revision: 1.10 $
*
- * Sun Industry Standards Source License Version 1.1
- * =================================================
- * The contents of this file are subject to the Sun Industry Standards
- * Source License Version 1.1 (the "License"); You may not use this file
- * except in compliance with the License. You may obtain a copy of the
- * License at http://www.openoffice.org/license.html.
+ * last change: $Author: hr $ $Date: 2005-09-29 16:35:53 $
*
- * Software provided under this License is provided on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
- * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
- * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
- * See the License for the specific provisions governing your rights and
- * obligations concerning the Software.
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
*
- * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
*
- * Copyright: 2000 by Sun Microsystems, Inc.
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
*
- * All Rights Reserved.
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
*
- * Contributor(s): _______________________________________
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
*
************************************************************************/
@@ -849,18 +823,31 @@ SbiParameters::SbiParameters( SbiParser* p, BOOL bConst, BOOL bPar) :
// Benannte Argumente: entweder .name= oder name:=
else
{
- pExpr = bConst ? new SbiConstExpression( pParser )
- : new SbiExpression( pParser );
- if( pParser->Peek() == ASSIGN )
+ if( eTok == DOT )
{
- // VBA mode: name:=
- // SbiExpression::Term() hat einen String daraus gemacht
- aName = pExpr->GetString();
- delete pExpr;
+ // VB mode: .name=
pParser->Next();
- pExpr = new SbiExpression( pParser );
- if( bConst )
- pParser->Error( SbERR_SYNTAX ), bError = TRUE;
+ pParser->TestSymbol( TRUE ); // Keywords sind OK
+ aName = pParser->GetSym();
+ pParser->TestToken( EQ );
+ pExpr = bConst ? new SbiConstExpression( pParser )
+ : new SbiExpression( pParser );
+ }
+ else
+ {
+ pExpr = bConst ? new SbiConstExpression( pParser )
+ : new SbiExpression( pParser );
+ if( pParser->Peek() == ASSIGN )
+ {
+ // VBA mode: name:=
+ // SbiExpression::Term() hat einen String daraus gemacht
+ aName = pExpr->GetString();
+ delete pExpr;
+ pParser->Next();
+ pExpr = new SbiExpression( pParser );
+ if( bConst )
+ pParser->Error( SbERR_SYNTAX ), bError = TRUE;
+ }
}
pExpr->GetName() = aName;
}