Bug 545897 - Missing code suggestions for result of a method within the
parameter list of another method when annotation processing is enabled
(no annotation processor neccessary)
Change-Id: I82361383040a60a39d6f37cf172b808bcc6ef3f4
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
index 5678f8d..9192ea0 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
@@ -570,12 +570,13 @@
public void completeTypeBindings(CompilationUnitDeclaration parsedUnit, boolean buildFieldsAndMethods) {
if (parsedUnit.scope == null) return; // parsing errors were too severe
LookupEnvironment rootEnv = this.root;
+ CompilationUnitDeclaration previousUnitBeingCompleted = rootEnv.unitBeingCompleted;
(rootEnv.unitBeingCompleted = parsedUnit).scope.checkAndSetImports();
parsedUnit.scope.connectTypeHierarchy();
parsedUnit.scope.checkParameterizedTypes();
if (buildFieldsAndMethods)
parsedUnit.scope.buildFieldsAndMethods();
- rootEnv.unitBeingCompleted = null;
+ rootEnv.unitBeingCompleted = previousUnitBeingCompleted;
}
/*