Bug 108453 [quick fix] @SuppressWarnings("nls") on static initializer causes error
If you have static block with non-externalised strings and you add "SuppressWarning" quick fix to the block, jdt compiler reports error on the static key word saying "Syntax error, insert "enum Identifier" to complete EnumHeader" Cheers
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/LocalCorrectionsSubProcessor.java
curr= ((ParenthesizedExpression) curr).getExpression();
		}
		if (curr instanceof CastExpression) {
			ASTRewrite rewrite= ASTRewrite.create(selectedNode.getAST());
			CastExpression cast= (CastExpression) curr;
			Expression expression= cast.getExpression();
			ASTNode placeholder= rewrite.createCopyTarget(expression);
			if (ASTNodes.needsParentheses(expression)) {
				rewrite.replace(curr, placeholder, null);
			} else {
				rewrite.replace(selectedNode, placeholder, null);
			}
			String label= CorrectionMessages.LocalCorrectionsSubProcessor_unnecessarycast_description;
			Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);
			ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, context.getCompilationUnit(), rewrite, 5, image);
			proposals.add(proposal);
		}
	}
	public static void addUnnecessaryInstanceofProposal(IInvocationContext context, IProblemLocation problem, Collection proposals) {
		ASTNode selectedNode= problem.getCoveringNode(context.getASTRoot());
		ASTNode curr= selectedNode;
		while (curr instanceof ParenthesizedExpression) {
			curr= ((ParenthesizedExpression) curr).getExpression();
		}
		if (curr instanceof InstanceofExpression) {
			AST ast= curr.getAST();
			ASTRewrite rewrite= ASTRewrite.create(ast);
			InstanceofExpression inst= (InstanceofExpression) curr;
			InfixExpression expression= ast.newInfixExpression();
			expression.setLeftOperand((Expression) rewrite.createCopyTarget(inst.getLeftOperand()));