diff --git a/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java b/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java index 31a0ed0e7d98..0e38708700ec 100644 --- a/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java @@ -26,6 +26,7 @@ import com.jetbrains.python.psi.PyClass; import com.jetbrains.python.psi.PyFunction; import com.jetbrains.python.psi.PyTargetExpression; import com.jetbrains.python.psi.impl.PyClassImpl; +import com.jetbrains.python.psi.types.TypeEvalContext; import com.jetbrains.python.testing.PythonUnitTestUtil; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; @@ -69,7 +70,7 @@ public class PyAttributeOutsideInitInspection extends PyInspection { if (containingClass == null) return; final String name = node.getName(); if (name != null && name.startsWith("_")) return; - if (!isApplicable(containingClass)) { + if (!isApplicable(containingClass, myTypeEvalContext)) { return; } @@ -111,7 +112,7 @@ public class PyAttributeOutsideInitInspection extends PyInspection { } } - private static boolean isApplicable(@NotNull final PyClass containingClass) { - return !PythonUnitTestUtil.isUnitTestCaseClass(containingClass) && !containingClass.isSubclass("django.db.models.base.Model", null); + private static boolean isApplicable(@NotNull PyClass containingClass, @NotNull TypeEvalContext context) { + return !PythonUnitTestUtil.isUnitTestCaseClass(containingClass) && !containingClass.isSubclass("django.db.models.base.Model", context); } } diff --git a/python/src/com/jetbrains/python/inspections/PyPropertyDefinitionInspection.java b/python/src/com/jetbrains/python/inspections/PyPropertyDefinitionInspection.java index 1ad191325580..807666d9284a 100644 --- a/python/src/com/jetbrains/python/inspections/PyPropertyDefinitionInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyPropertyDefinitionInspection.java @@ -28,7 +28,6 @@ import com.intellij.psi.PsiPolyVariantReference; import com.intellij.psi.util.PsiElementFilter; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.QualifiedName; -import com.intellij.util.Processor; import com.jetbrains.python.PyBundle; import com.jetbrains.python.PyNames; import com.jetbrains.python.inspections.quickfix.PyUpdatePropertySignatureQuickFix; @@ -287,7 +286,7 @@ public class PyPropertyDefinitionInspection extends PyInspection { private void checkForSelf(PyParameterList paramList) { PyParameter[] parameters = paramList.getParameters(); final PyClass cls = PsiTreeUtil.getParentOfType(paramList, PyClass.class); - if (cls != null && cls.isSubclass("type", null)) return; + if (cls != null && cls.isSubclass("type", myTypeEvalContext)) return; if (parameters.length > 0 && !PyNames.CANONICAL_SELF.equals(parameters[0].getName())) { registerProblem( parameters[0], PyBundle.message("INSP.accessor.first.param.is.$0", PyNames.CANONICAL_SELF), ProblemHighlightType.WEAK_WARNING,