--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/langtools/tools/javac/patterns/ImpossibleTypeTest.java Wed Nov 27 09:00:01 2019 +0100
@@ -0,0 +1,21 @@
+/*
+ * @test /nodynamiccopyright/
+ * @bug 8231827
+ * @summary Ensure that in type test patterns, the predicate is not trivially provable false.
+ * @compile/fail/ref=ImpossibleTypeTest.out -XDrawDiagnostics --enable-preview -source ${jdk.version} ImpossibleTypeTest.java
+ */
+public class ImpossibleTypeTest {
+
+ public static void main(String[] args) {
+
+ int in = 42;
+ Integer i = 42;
+
+ if (i instanceof String s ) {
+ System.out.println("Broken");
+ }
+ if (i instanceof Undefined u ) {
+ System.out.println("Broken");
+ }
+ }
+}