case ASTNode.INSTANCEOF_EXPRESSION: InstanceofExpression instanceofExpression= (InstanceofExpression) parent; return instanceofExpression.getLeftOperand().resolveTypeBinding(); case ASTNode.ARRAY_CREATION: ArrayCreation creation= (ArrayCreation) parent; if (creation.getInitializer() != null) { return creation.getInitializer().resolveTypeBinding(); } return ASTResolving.guessBindingForReference(parent);
	private ITypeBinding getPossibleSuperTypeBinding(ASTNode node) {		 if (fTypeKind == K_ANNOTATION) {		 	return null;		 }		AST ast= node.getAST();		ASTNode parent= node.getParent();		while (parent instanceof Type) {			parent= parent.getParent();		}		switch (parent.getNodeType()) {			case ASTNode.METHOD_DECLARATION:				MethodDeclaration decl= (MethodDeclaration) parent;				if (decl.thrownExceptions().contains(node)) {					return ast.resolveWellKnownType("java.lang.Exception"); //$NON-NLS-1$				}				break;			case ASTNode.INSTANCEOF_EXPRESSION:				InstanceofExpression instanceofExpression= (InstanceofExpression) parent;				return instanceofExpression.getLeftOperand().resolveTypeBinding();			case ASTNode.ARRAY_CREATION:				ArrayCreation creation= (ArrayCreation) parent;				if (creation.getInitializer() != null) {					return creation.getInitializer().resolveTypeBinding();				}				return ASTResolving.guessBindingForReference(parent);			case ASTNode.THROW_STATEMENT :				return ast.resolveWellKnownType("java.lang.Exception"); //$NON-NLS-1$			case ASTNode.TYPE_LITERAL:			case ASTNode.CLASS_INSTANCE_CREATION:			case ASTNode.CAST_EXPRESSION:				return ASTResolving.guessBindingForReference(parent);			case ASTNode.SINGLE_VARIABLE_DECLARATION:				ASTNode parentParent= parent.getParent();				if (parentParent.getNodeType() == ASTNode.CATCH_CLAUSE) {					return ast.resolveWellKnownType("java.lang.Exception"); //$NON-NLS-1$				}				break;		}		return null;	}