Bug 94302 [Quick fix] on A.class offers odd generic replacement
Probably related to 93643. Against I20050509-2010. Given code: import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; public class FlashcardTests { public static Test suite() { TestSuite suite = new TestSuite(); add(suite, ParserTest.class); return suite; } private static void add(TestSuite suite, Class<? extends TestCase> clazz) { suite.addTestSuite(clazz); } } Since ParserTest doesn't exist, there's a compiler error. Using quick fix offers "Change to Class<? extends junit.framework.TestCase>", which is no closer to compiling code.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ASTResolving.java
ITypeBinding curr= interfaces[i];
			if (!res.contains(curr)) {
				res.add(curr);
			}
			collectRelaxingTypes(res, curr);
		}
		ITypeBinding binding= type.getSuperclass();
		if (binding != null) {
			if (!res.contains(binding)) {
				res.add(binding);
			}
			collectRelaxingTypes(res, binding);
		}
	}
	public static String getBaseNameFromExpression(IJavaProject project, Expression assignedExpression) {
		String name= null;
		if (assignedExpression instanceof Name) {
			Name simpleNode= (Name) assignedExpression;
			IBinding binding= simpleNode.resolveBinding();
			String varName= ASTNodes.getSimpleNameIdentifier(simpleNode);
			if (binding instanceof IVariableBinding) {
				if (((IVariableBinding) binding).isField()) {
					varName= NamingConventions.removePrefixAndSuffixForFieldName(project, varName, binding.getModifiers());
				} else {
					CompilationUnit astRoot= (CompilationUnit) assignedExpression.getRoot();
					if (astRoot.findDeclaringNode(binding) instanceof SingleVariableDeclaration) {
						varName= NamingConventions.removePrefixAndSuffixForArgumentName(project, varName);
					} else {
						varName= NamingConventions.removePrefixAndSuffixForLocalVariableName(project, varName);
					}