Bug 576166 - CCE during compilation of org.eclipse.objectteams.jdt.ui
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/bytecode/AnchorListAttribute.java b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/bytecode/AnchorListAttribute.java
index 8f8e063..2c6a3e7 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/bytecode/AnchorListAttribute.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/bytecode/AnchorListAttribute.java
@@ -24,8 +24,11 @@
import org.eclipse.jdt.core.compiler.CharOperation;
import org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
+import org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration;
import org.eclipse.jdt.internal.compiler.classfmt.MethodInfo;
import org.eclipse.jdt.internal.compiler.lookup.Binding;
+import org.eclipse.jdt.internal.compiler.lookup.ClassScope;
+import org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope;
import org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding;
import org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment;
import org.eclipse.jdt.internal.compiler.lookup.MethodBinding;
@@ -204,7 +207,14 @@
LocalVariableBinding anchor = new LocalVariableBinding(
anchorName, type.enclosingType(), 0, true); // name is irrelevant.
// make sure this anchor can answer `anchor.declaringScope.referenceMethodBinding()`:
- anchor.declaringScope = new CallinCalloutScope(null, null) {
+ anchor.declaringScope = new CallinCalloutScope(
+ new ClassScope(
+ new CompilationUnitScope(
+ new CompilationUnitDeclaration(null, null, 0),
+ environment.globalOptions),
+ null),
+ null)
+ {
@Override
public MethodBinding referenceMethodBinding() {
return declaringMethod;