if (target instanceof Initializer) { target= ASTResolving.findParentBodyDeclaration(target.getParent()); }
	public static void addSuppressWarningsProposals(IInvocationContext context, IProblemLocation problem, Collection proposals) {		if (problem.isError()) {			return;		}		String warningToken= CorrectionEngine.getWarningToken(problem.getProblemId());		if (warningToken == null) {			return;		}		/*for (Iterator iter= proposals.iterator(); iter.hasNext();) {			Object element= iter.next();			if (element instanceof ICommandAccess && ADD_SUPPRESSWARNINGS_ID.equals(((ICommandAccess) element).getCommandId())) {				return; // only one at a time			}		}*/				ASTNode node= problem.getCoveringNode(context.getASTRoot());		if (node == null) {			return;		}		if (node.getLocationInParent() == VariableDeclarationFragment.NAME_PROPERTY) {			ASTNode parent= node.getParent();			if (parent.getLocationInParent() == VariableDeclarationStatement.FRAGMENTS_PROPERTY) {				addSuppressWarningsProposal(context.getCompilationUnit(), parent.getParent(), warningToken, -2, proposals);				return;			}		} else if (node.getLocationInParent() == SingleVariableDeclaration.NAME_PROPERTY) {			addSuppressWarningsProposal(context.getCompilationUnit(), node.getParent(), warningToken, -2, proposals);			return;		}				ASTNode target= ASTResolving.findParentBodyDeclaration(node);		if (target != null) {			addSuppressWarningsProposal(context.getCompilationUnit(), target, warningToken, -3, proposals);		}	}