diff --git a/java/java-tests/testData/inspection/dataFlow/fixture/SymmetricUncheckedCast.java b/java/java-tests/testData/inspection/dataFlow/fixture/SymmetricUncheckedCast.java
new file mode 100644
index 000000000000..8c1087bf9018
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/fixture/SymmetricUncheckedCast.java
@@ -0,0 +1,22 @@
+import java.util.Date;
+
+public class DataFlowBug {
+
+ private static boolean isNumberable(Object o) {
+ return o instanceof Number;
+ }
+
+ public Object add(Object left, Object right) {
+ if (left != null && right != null && (left instanceof Date || right instanceof Date)) {
+ if (isNumberable(left)) {
+ return ((Date) right).getTime();
+ }
+
+ if (isNumberable(right)) {
+ return ((Date) left).getTime();
+ }
+ }
+ return new Object();
+ }
+
+}
\ No newline at end of file
diff --git a/java/java-tests/testSrc/com/intellij/codeInspection/DataFlowInspectionFixtureTest.java b/java/java-tests/testSrc/com/intellij/codeInspection/DataFlowInspectionFixtureTest.java
index 4864bb856e56..4b93063ce552 100644
--- a/java/java-tests/testSrc/com/intellij/codeInspection/DataFlowInspectionFixtureTest.java
+++ b/java/java-tests/testSrc/com/intellij/codeInspection/DataFlowInspectionFixtureTest.java
@@ -149,6 +149,7 @@ public class DataFlowInspectionFixtureTest extends JavaCodeInsightFixtureTestCas
public void testLastConstantConditionInAnd() { doTest(); }
public void testTransientFinalField() { doTest(); }
+ public void _testSymmetricUncheckedCast() { doTest(); }
public void testNullableForeachVariable() {
setupCustomAnnotations();