### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: model/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java,v retrieving revision 1.6 diff -u -r1.6 SourceElementNotifier.java --- model/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java 16 Jan 2009 14:29:29 -0000 1.6 +++ model/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java 25 Jul 2010 12:28:45 -0000 @@ -551,7 +551,7 @@ importReference.modifiers); } } -protected void notifySourceElementRequestor(TypeDeclaration typeDeclaration, boolean notifyTypePresence, TypeDeclaration declaringType, ImportReference currentPackage) { +protected void notifySourceElementRequestor(TypeDeclaration typeDeclaration, boolean notifyTypePresence, TypeDeclaration declaringTypeOfLocalType, ImportReference currentPackage) { if (CharOperation.equals(TypeConstants.PACKAGE_INFO_NAME, typeDeclaration.name)) return; @@ -584,7 +584,7 @@ char[] superclassName; if (isEnumInit) { currentModifiers |= ClassFileConstants.AccEnum; - superclassName = declaringType.name; + superclassName = declaringTypeOfLocalType.name; } else { superclassName = getSuperclassName(typeDeclaration); } Index: model/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java,v retrieving revision 1.65 diff -u -r1.65 SourceTypeConverter.java --- model/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java 17 Aug 2009 18:56:17 -0000 1.65 +++ model/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java 25 Jul 2010 12:28:46 -0000 @@ -495,6 +495,7 @@ type.memberTypes = new TypeDeclaration[sourceMemberTypeCount]; for (int i = 0; i < sourceMemberTypeCount; i++) { type.memberTypes[i] = convert(sourceMemberTypes[i], compilationResult); + type.memberTypes[i].enclosingType = type; } } Index: model/org/eclipse/jdt/internal/core/BinaryTypeConverter.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/BinaryTypeConverter.java,v retrieving revision 1.20 diff -u -r1.20 BinaryTypeConverter.java --- model/org/eclipse/jdt/internal/core/BinaryTypeConverter.java 27 Jun 2008 16:03:51 -0000 1.20 +++ model/org/eclipse/jdt/internal/core/BinaryTypeConverter.java 25 Jul 2010 12:28:46 -0000 @@ -282,6 +282,7 @@ } else { typeDeclaration.memberTypes[i] = convert(memberTypes[i], null, null); } + typeDeclaration.memberTypes[i].enclosingType = typeDeclaration; } /* convert fields */