IDEA-154811 Nullable inspection is incorrect with user-defined valueOf static method in Enum

This commit is contained in:
peter
2016-04-19 12:33:19 +02:00
parent 0e85fa0ea4
commit 1475442c3f
2 changed files with 28 additions and 9 deletions
@@ -16,12 +16,24 @@ class FooWithComments {
return <warning descr="Condition 'AnEnum.valueOf(name) != null' is always 'true'">AnEnum.valueOf(name) != null</warning>;
}
boolean checkCustomValueOf(int i) {
return AnEnum.valueOf(i) != null;
}
private native void anotherMethod(String name);
@Nullable
private native AnEnum nullableGetter();
enum AnEnum {
ENUM_VALUE, FOO2
ENUM_VALUE, FOO2;
@Nullable
public static AnEnum valueOf(int i) {
if (i < 0 || i > 1)
return null;
return values()[i];
}
}
}