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
k++;
				
				TagElement tagNode= findParamTag(methodDecl, decl);
				if (tagNode != null) {
					List fragments= tagNode.fragments();
					if (!fragments.isEmpty()) {
						SimpleName arg= ast.newSimpleName("x"); 
						rewrite.replace((ASTNode) fragments.get(0), arg, null);
						desc.resultingTagArg= arg;
					}
				}
				
			} else if (curr instanceof SwapDescription) {
				SingleVariableDeclaration decl1= (SingleVariableDeclaration) parameters.get(k);
				SingleVariableDeclaration decl2= (SingleVariableDeclaration) parameters.get(((SwapDescription) curr).index);
				
				rewrite.replace(decl1, rewrite.createCopyTarget(decl2), null);
				rewrite.replace(decl2, rewrite.createCopyTarget(decl1), null);
				
				usedNames.add(decl1.getName().getIdentifier());
				k++;	
				
				TagElement tagNode1= findParamTag(methodDecl, decl1);
				TagElement tagNode2= findParamTag(methodDecl, decl2);
				if (tagNode1 != null && tagNode2 != null) {
					rewrite.replace(tagNode1, rewrite.createCopyTarget(tagNode2), null);
					rewrite.replace(tagNode2, rewrite.createCopyTarget(tagNode1), null);
				}
			}