/
githubmirror
/
panama-vector
Обзор
Документация
Войти
/
githubmirror
/
panama-vector
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/langtools/tools/javac/T8312163.java
57 строк
1 KB
Aggelos Biboudis
8315532: Compiler Implementation for Unnamed Variables & Patterns
30 окт 2023, 13:28
30 окт 2023, 13:28
c9d23c3
Код
Авторство
О чём код?
/* * @test /nodynamiccopyright/ * @bug 8312163 * @summary Crash in dominance check when compiling unnamed patterns * @compile/fail/ref=T8312163.out -XDrawDiagnostics T8312163.java */ public class T8312163 { sealed interface A permits B {} record B() implements A {} record Rec(A a, A b) {} public void test(Rec r) { switch (r) { case Rec(_, _): break; case Rec(_, B()): // dominated } switch (r) { case Rec(_, B()): break; case Rec(_, _): } switch (r) { case Rec(_, _): break; case Rec(_, A a): // dominated } switch (r) { case Rec(_, A a): break; case Rec(_, _): // dominated } // duplicated unnamed patterns with unnamed pattern variables for reference switch (r) { case Rec(var _, var _): break; case Rec(var _, B()): // dominated } switch (r) { case Rec(var _, B()): break; case Rec(var _, var _): } switch (r) { case Rec(var _, var _): break; case Rec(var _, A a): // dominated } switch (r) { case Rec(var _, A a): break; case Rec(var _, var _): // dominated } } }