summaryrefslogtreecommitdiff
path: root/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java')
-rw-r--r--java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java
index 7ef19f2b73d0..7539d7195701 100644
--- a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java
+++ b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java
@@ -591,12 +591,14 @@ public class ControlFlowAnalyzer extends JavaElementVisitor {
generateBoxingUnboxingInstructionFor(caseExpression, PsiType.INT);
final PsiClass psiClass = PsiUtil.resolveClassInType(caseExpression.getType());
- if (psiClass != null && psiClass.isEnum()) {
+ if (psiClass != null) {
addInstruction(new FieldReferenceInstruction(caseExpression, "switch statement expression"));
- enumValues = new HashSet<PsiEnumConstant>();
- for (PsiField f : psiClass.getFields()) {
- if (f instanceof PsiEnumConstant) {
- enumValues.add((PsiEnumConstant)f);
+ if (psiClass.isEnum()) {
+ enumValues = new HashSet<PsiEnumConstant>();
+ for (PsiField f : psiClass.getFields()) {
+ if (f instanceof PsiEnumConstant) {
+ enumValues.add((PsiEnumConstant)f);
+ }
}
}
} else {