a bugfix on variables
[phpeclipse.git] / net.sourceforge.phpeclipse / src / test / PHPParser.jj
index 9ad3eff..afc5890 100644 (file)
@@ -920,19 +920,19 @@ FieldDeclaration FieldDeclaration() :
  */
 VariableDeclaration VariableDeclaratorNoSuffix() :
 {
-  final Token dollar, token, lbrace,rbrace;
+  final Token token, lbrace,rbrace;
   Expression expr, initializer = null;
   Token assignToken;
   Variable variable;
 }
 {
-  dollar = <DOLLAR>
+  <DOLLAR>
   (
      token = <IDENTIFIER>
-     {variable = new Variable(token.image,dollar.sourceStart,token.sourceEnd);}
+     {variable = new Variable(token.image,token.sourceStart,token.sourceEnd);}
    |
      lbrace = <LBRACE> expr = Expression() rbrace = <RBRACE>
-     {variable = new Variable(expr,dollar.sourceStart,rbrace.sourceEnd);}
+     {variable = new Variable(expr,lbrace.sourceStart,rbrace.sourceEnd);}
   )
   [
     assignToken = <ASSIGN>
@@ -1038,7 +1038,7 @@ Variable Variable() :
 {
   token = <DOLLAR> variable = Var(token)
   {
-    return new Variable(variable,token.sourceStart,variable.sourceEnd);
+    return new Variable(variable,token.sourceEnd,variable.sourceEnd);
   }
 }
 
@@ -1051,7 +1051,7 @@ Variable Var(final Token dollar) :
 }
 {
   token = <DOLLAR> variable = Var(token)
-  {return new Variable(variable,dollar.sourceStart,variable.sourceEnd);}
+  {return new Variable(variable,dollar.sourceEnd,variable.sourceEnd);}
 |
   token = <LBRACE> expression = Expression() token2 = <RBRACE>
   {
@@ -1865,7 +1865,7 @@ AbstractVariable VariableSuffix(final AbstractVariable prefix) :
                 }
       |
         token = <IDENTIFIER>
-        {expression = new Variable(token.image,token.sourceStart,token.sourceEnd);}
+        {expression = new ConstantIdentifier(token.image,token.sourceStart,token.sourceEnd);}
       |
         expression = Variable()
     )