X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/parser/UnitParser.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/parser/UnitParser.java index 2da0761..d420454 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/parser/UnitParser.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/parser/UnitParser.java @@ -77,8 +77,8 @@ public class UnitParser extends Parser { firstToken = TokenNameMINUS_MINUS; scanner.recordLineSeparator = false; } - public void initialize() { - super.initialize(); + public void initialize(boolean phpMode) { + super.initialize(phpMode); //positionning the parser for a new compilation unit //avoiding stack reallocation and all that.... // astPtr = -1; @@ -132,13 +132,13 @@ public class UnitParser extends Parser { // A P I - public CompilationUnitDeclaration parse(ICompilationUnit sourceUnit, CompilationResult compilationResult) { + public CompilationUnitDeclaration parse(ICompilationUnit sourceUnit, CompilationResult compilationResult, boolean phpMode) { // parses a compilation unit and manages error handling (even bugs....) CompilationUnitDeclaration unit; try { /* automaton initialization */ - initialize(); + initialize(phpMode); goForCompilationUnit(); /* scanner initialization */ @@ -253,7 +253,7 @@ public class UnitParser extends Parser { //convert bugs into parse error - initialize(); + initialize(false); goForConstructorBody(); nestedMethod[nestedType]++; @@ -273,7 +273,7 @@ public class UnitParser extends Parser { } if (lastAct == ERROR_ACTION) { - initialize(); + initialize(false); return; } @@ -317,7 +317,7 @@ public class UnitParser extends Parser { //convert bugs into parse error - initialize(); + initialize(false); goForExpression(); nestedMethod[nestedType]++; @@ -356,7 +356,7 @@ public class UnitParser extends Parser { //convert bugs into parse error - initialize(); + initialize(false); goForInitializer(); nestedMethod[nestedType]++; @@ -401,7 +401,7 @@ public class UnitParser extends Parser { // if ((md.modifiers & AccSemicolonBody) != 0) // return; - initialize(); + initialize(false); goForMethodBody(); nestedMethod[nestedType]++; @@ -445,7 +445,7 @@ public class UnitParser extends Parser { CompilationUnitDeclaration unit; try { /* automaton initialization */ - initialize(); + initialize(false); goForCompilationUnit(); /* scanner initialization */ @@ -469,12 +469,15 @@ public class UnitParser extends Parser { } public CompilationUnitDeclaration dietParse(ICompilationUnit sourceUnit, CompilationResult compilationResult) { + return dietParse(sourceUnit, compilationResult, true); + } + public CompilationUnitDeclaration dietParse(ICompilationUnit sourceUnit, CompilationResult compilationResult, boolean phpMode) { CompilationUnitDeclaration parsedUnit; boolean old = diet; try { diet = true; - parsedUnit = parse(sourceUnit, compilationResult); + parsedUnit = parse(sourceUnit, compilationResult, phpMode); } finally { diet = old; }