Bug 83161 Can't access public field from private subclass
Since I20050118 this code does not compile anymore. The access to 'publicField' is marked as 'not visible' public class A { private static class PrivateInner { public int publicField; } public static class PublicInner extends PrivateInner { } } class B { void foo(Object o) { A.PublicInner x; int i= ((A.PublicInner)o).publicField; int j= x.publicField; } } Also note the strange error range marked on the assignment to 'i'
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ChangeMethodSignatureProposal.java
}
		if (!hasCreatedVariables) {
			return;
		}
		
		if (methodDecl.getBody() != null) {
			
			CompilationUnit root= (CompilationUnit) methodDecl.getRoot();
			IBinding[] bindings= (new ScopeAnalyzer(root)).getDeclarationsAfter(methodDecl.getBody().getStartPosition(), ScopeAnalyzer.VARIABLES);
			for (int i= 0; i < bindings.length; i++) {
				usedNames.add(bindings[i].getName());
			}
		}
		
		fixupNames(rewrite, usedNames, methodDecl, isInDifferentCU);
	}
	private void fixupNames(ASTRewrite rewrite, ArrayList usedNames, MethodDeclaration methodDecl, boolean isInDifferentCU) {
		AST ast= rewrite.getAST();
		
		for (int i= 0; i < fParameterChanges.length; i++) {
			ChangeDescription curr= fParameterChanges[i];
			if (curr instanceof ModifyDescription) {
				ModifyDescription desc= (ModifyDescription) curr;
				SingleVariableDeclaration var= desc.resultingNode;
				String suggestedName= desc.name;
				String typeKey= getParamTypeGroupId(i);
				String nameKey= getParamNameGroupId(i);
				
				String favourite= null;
				String[] excludedNames= (String[]) usedNames.toArray(new String[usedNames.size()]);