| /* | |
| * @test /nodynamiccopyright/ | |
| * @bug 8231827 | |
| * @summary Testing pattern matching against the null constant | |
| * @run main NullsInPatterns | |
| */ | |
| import java.util.List; | |
| public class NullsInPatterns { | |
| public static void main(String... args) { | |
| if (null instanceof List t) { | |
| throw new AssertionError("broken"); | |
| } else { | |
| System.out.println("null does not match List type pattern"); | |
| } | |
| //reifiable types not allowed in type test patterns in instanceof: | |
| // if (null instanceof List<Integer> l) { | |
| // throw new AssertionError("broken"); | |
| // } else { | |
| // System.out.println("null does not match List<Integer> type pattern"); | |
| // } | |
| if (null instanceof List<?> l) { | |
| throw new AssertionError("broken"); | |
| } else { | |
| System.out.println("null does not match List<?> type pattern"); | |
| } | |
| } | |
| } |