diff --git a/java/java-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java b/java/java-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java index abf16192f802..058391bce6e8 100644 --- a/java/java-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java +++ b/java/java-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java @@ -417,7 +417,7 @@ class ControlFlowAnalyzer extends JavaElementVisitor { generateBoxingUnboxingInstructionFor(condition, PsiType.BOOLEAN); } else { - addInstruction(new PushInstruction(myFactory.getConstFactory().getTrue(), null)); + addInstruction(new PushInstruction(null, null)); } addInstruction(new ConditionalGotoInstruction(getEndOffset(statement), true, condition)); diff --git a/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach.java b/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach.java new file mode 100644 index 000000000000..9acf6a02ee78 --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach.java @@ -0,0 +1,12 @@ +public abstract class Zzza { + + void foo(Object o) { + if (o instanceof String) { + for (java.lang.Object : o.substr) { + + } + } + } + + +} \ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach_after.java b/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach_after.java new file mode 100644 index 000000000000..ef3755a96719 --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normal/CastInstanceofedQualifierInForeach_after.java @@ -0,0 +1,12 @@ +public abstract class Zzza { + + void foo(Object o) { + if (o instanceof String) { + for (java.lang.Object : ((String) o).substring()) { + + } + } + } + + +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionTest.groovy b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionTest.groovy index 4bac5c3bfa32..5f76fa018309 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionTest.groovy +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionTest.groovy @@ -890,6 +890,7 @@ public class ListUtils { } public void testCastInstanceofedQualifier() throws Throwable { doTest(); } + public void testCastInstanceofedQualifierInForeach() throws Throwable { doTest(); } public void testCastComplexInstanceofedQualifier() throws Throwable { doTest(); } public void testCastTooComplexInstanceofedQualifier() throws Throwable { doAntiTest(); }