mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
reformat
This commit is contained in:
+5
-4
@@ -129,10 +129,11 @@ public class PsiCatchSectionImpl extends CompositePsiElement implements PsiCatch
|
||||
List<PsiType> types = new ArrayList<>();
|
||||
for (PsiType type : uncaughtTypes) {
|
||||
if (declaredType.isAssignableFrom(type) ||
|
||||
// from 11.2.3 exception checking
|
||||
// It is a compile-time error if a catch clause can catch checked exception class E1 and it is not the case that the try block corresponding to the catch clause can
|
||||
// throw a checked exception class that is a subclass or superclass of E1, unless E1 is Exception or a superclass of Exception.
|
||||
// so here unchecked exception can sneak throw Exception or Throwable catch type only
|
||||
// JLS 11.2.3 "Exception Checking":
|
||||
// "It is a compile-time error if a catch clause can catch checked exception class E1 and it is not the case
|
||||
// that the try block corresponding to the catch clause can throw a checked exception class that is
|
||||
// a subclass or superclass of E1, unless E1 is Exception or a superclass of Exception."
|
||||
// So here unchecked exception can sneak through Exception or Throwable catch type only.
|
||||
ExceptionUtil.isGeneralExceptionType(declaredType) && type instanceof PsiClassType && ExceptionUtil.isUncheckedException((PsiClassType)type)) {
|
||||
types.add(type);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user