an empty return statement does not return a value (PY-4502)

This commit is contained in:
Dmitry Jemerov
2011-11-15 19:00:52 +01:00
parent 67c17b85ea
commit fe2efca0ca
2 changed files with 9 additions and 1 deletions
@@ -274,7 +274,8 @@ public class PyPropertyDefinitionInspection extends PyInspection {
final PsiElement[] returnStatements = PsiTreeUtil.collectElements(callable, new PsiElementFilter() {
@Override
public boolean isAccepted(PsiElement element) {
return (element instanceof PyReturnStatement) || (element instanceof PyYieldExpression);
return (element instanceof PyReturnStatement && ((PyReturnStatement) element).getExpression() != null) ||
(element instanceof PyYieldExpression);
}
});
hasReturns = returnStatements.length > 0;
@@ -46,4 +46,11 @@ class A(object):
def futuroo(self):
raise NotImplementedError("Override!") # ok though no return
@property
def xoo(self):
return self._x
@xoo.setter
def xoo(self, x):
self._x = x
return