Bug 416781 - reconcile compiler changes from BETA_JAVA8 with OT/J
- integrate new call into the compiler with Dependencies/Config
diff --git a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
index 1a721a1..a642132 100644
--- a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
+++ b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
@@ -56,6 +56,7 @@
import org.eclipse.jdt.internal.core.search.matching.JavaSearchNameEnvironment;
import org.eclipse.jdt.internal.core.search.matching.MethodPattern;
import org.eclipse.jdt.internal.core.search.processing.JobManager;
+import org.eclipse.objectteams.otdt.internal.core.compiler.control.Dependencies;
/**
* A SourceIndexer indexes java files using a java parser. The following items are indexed:
@@ -171,10 +172,22 @@
INameEnvironment nameEnvironment = new JavaSearchNameEnvironment(javaProject, JavaModelManager.getJavaModelManager().getWorkingCopies(DefaultWorkingCopyOwner.PRIMARY, true/*add primary WCs*/));
this.lookupEnvironment = new LookupEnvironment(this, this.options, problemReporter, nameEnvironment);
reduceParseTree(this.cud);
+//{ObjectTeams: need Dependencies configured:
+ boolean depsConfigured = Dependencies.isSetup();
+ try {
+ if (!depsConfigured)
+ Dependencies.setup(this, this.basicParser, this.lookupEnvironment, true, false);
+// orig:
this.lookupEnvironment.buildTypeBindings(this.cud, null);
this.lookupEnvironment.completeTypeBindings();
this.cud.scope.faultInTypes();
this.cud.resolve();
+// :giro
+ } finally {
+ if (!depsConfigured)
+ Dependencies.release(this);
+ }
+// SH}
} catch (Exception e) {
if (JobManager.VERBOSE) {
e.printStackTrace();