void (PyQualifiedExpression node) { final PyExpression qualifier = node.getQualifier(); final String attrName = node.getReferencedName(); if (qualifier != null && attrName != null) { final PyType type = myTypeEvalContext.getType(qualifier); if (type instanceof PyClassType && !((PyClassType)type).isAttributeWritable(attrName, myTypeEvalContext)) { final ASTNode nameNode = node.getNameElement(); final PsiElement e = nameNode != null ? nameNode.getPsi() : node; registerProblem(e, PyPsiBundle.message("INSP.unresolved.refs.class.object.has.no.attribute", type.getName(), attrName)); } } }