mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
when a nullable variable is assigned with an unknown value, don't consider it nullable (IDEA-42890)
This commit is contained in:
@@ -267,7 +267,10 @@ public class DfaMemoryStateImpl implements DfaMemoryState {
|
||||
if (var == value) return;
|
||||
|
||||
flushVariable(var);
|
||||
if (value instanceof DfaUnknownValue) return;
|
||||
if (value instanceof DfaUnknownValue) {
|
||||
getVariableState(var).setNullable(false);
|
||||
return;
|
||||
}
|
||||
|
||||
getVariableState(var).setValue(value);
|
||||
if (value instanceof DfaNotNullValue) {
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public class BrokenAlignment {
|
||||
|
||||
public void main(String... args) {
|
||||
@Nullable Class object = Object.class;
|
||||
output2(object);
|
||||
}
|
||||
|
||||
public static void output2(@NotNull Object value) {
|
||||
System.out.println(value);
|
||||
}
|
||||
}
|
||||
@@ -84,6 +84,7 @@ public class DataFlowInspectionFixtureTest extends JavaCodeInsightFixtureTestCas
|
||||
public void testChainedFinalFieldAccessorsDfa() throws Throwable { doTest(); }
|
||||
|
||||
public void testAssigningUnknownToNullable() throws Throwable { doTest(); }
|
||||
public void testAssigningClassLiteralToNullable() throws Throwable { doTest(); }
|
||||
|
||||
public void testSynchronizingOnNullable() throws Throwable { doTest(); }
|
||||
public void testReturningNullFromVoidMethod() throws Throwable { doTest(); }
|
||||
|
||||
Reference in New Issue
Block a user