diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/suspiciousNameCombination/SuspiciousNameCombinationInspectionBase.java b/java/java-analysis-impl/src/com/intellij/codeInspection/suspiciousNameCombination/SuspiciousNameCombinationInspectionBase.java index 99ec22082f58..602c27a2488b 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/suspiciousNameCombination/SuspiciousNameCombinationInspectionBase.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/suspiciousNameCombination/SuspiciousNameCombinationInspectionBase.java @@ -156,10 +156,10 @@ public class SuspiciousNameCombinationInspectionBase extends BaseJavaBatchLocalI @Override public void visitReturnStatement(final PsiReturnStatement statement) { final PsiExpression returnValue = statement.getReturnValue(); - PsiElement containingMethod = PsiTreeUtil.getParentOfType(returnValue, PsiMethod.class, PsiLambdaExpression.class); - if (returnValue instanceof PsiReferenceExpression && containingMethod instanceof PsiMethod) { + PsiMethod containingMethod = PsiTreeUtil.getParentOfType(returnValue, PsiMethod.class, true, PsiLambdaExpression.class); + if (returnValue instanceof PsiReferenceExpression && containingMethod != null) { final String refName = ((PsiReferenceExpression)returnValue).getReferenceName(); - checkCombination(returnValue, ((PsiMethod)containingMethod).getName(), refName, "suspicious.name.return"); + checkCombination(returnValue, containingMethod.getName(), refName, "suspicious.name.return"); } } diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddRuntimeExceptionToThrowsAction.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddRuntimeExceptionToThrowsAction.java index 7dce70e13784..daaabcb6a733 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddRuntimeExceptionToThrowsAction.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/AddRuntimeExceptionToThrowsAction.java @@ -72,10 +72,10 @@ public class AddRuntimeExceptionToThrowsAction implements IntentionAction { PsiClassType exception = getRuntimeExceptionAtCaret(editor, file); if (exception == null) return false; - PsiElement element = PsiTreeUtil.getParentOfType(elementAtCaret(editor, file), PsiMethod.class, PsiLambdaExpression.class); - if (element == null || element instanceof PsiLambdaExpression || !((PsiMethod)element).getThrowsList().isPhysical()) return false; + PsiMethod method = PsiTreeUtil.getParentOfType(elementAtCaret(editor, file), PsiMethod.class, true, PsiLambdaExpression.class); + if (method == null || !method.getThrowsList().isPhysical()) return false; - return !isMethodThrows((PsiMethod)element, exception); + return !isMethodThrows(method, exception); } private static PsiClassType getRuntimeExceptionAtCaret(Editor editor, PsiFile file) { diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/encapsulation/ReturnOfCollectionFieldInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/encapsulation/ReturnOfCollectionFieldInspection.java index 553e24f521f0..3a34f3e564fb 100644 --- a/plugins/InspectionGadgets/src/com/siyeh/ig/encapsulation/ReturnOfCollectionFieldInspection.java +++ b/plugins/InspectionGadgets/src/com/siyeh/ig/encapsulation/ReturnOfCollectionFieldInspection.java @@ -94,11 +94,11 @@ public class ReturnOfCollectionFieldInspection extends ReturnOfCollectionFieldIn } private void fixContainingMethodReturnType(PsiReferenceExpression referenceExpression) { - final PsiElement element = PsiTreeUtil.getParentOfType(referenceExpression, PsiMethod.class, PsiLambdaExpression.class); - if (!(element instanceof PsiMethod)) { + final PsiMethod method = PsiTreeUtil.getParentOfType(referenceExpression, PsiMethod.class, true, PsiLambdaExpression.class); + if (method == null) { return; } - final PsiTypeElement returnTypeElement = ((PsiMethod)element).getReturnTypeElement(); + final PsiTypeElement returnTypeElement = method.getReturnTypeElement(); if (returnTypeElement == null) { return; }