IDEA-155801 "Dereference may produce NPE" warning should handle implicit constructor calls.

This commit is contained in:
peter
2016-05-13 15:36:59 +02:00
parent 786b4f5048
commit d8093d9057
2 changed files with 38 additions and 9 deletions

View File

@@ -67,13 +67,46 @@ class Test5 {
private final String something = new String("something");
private final String somethingElse = "somethingElse";
public Test5() {
super();
}
public Integer someLength() {
//May produce nullpointer warning
return something.length();
}
public Integer someElseLength() {
//No warning
return somethingElse.length();
}
}
class BadSuper {
public BadSuper() {
overrideableMethod();
}
protected void overrideableMethod() {}
}
class Test6 extends BadSuper {
private final String something = new String("something");
public Test6() {
}
public Integer someLength() {
return something.<warning descr="Method invocation 'length' may produce 'java.lang.NullPointerException'">length</warning>();
}
protected void overrideableMethod() {
someLength();
}
}
class Test7 extends BadSuper {
private final String something = new String("something");
protected void overrideableMethod() {
something.<warning descr="Method invocation 'length' may produce 'java.lang.NullPointerException'">length</warning>();
}
}