Commit Graph

126 Commits

Author SHA1 Message Date
Aggelos Biboudis
3a4a9b7af7 8340145: Problem with generic pattern matching results in internal compiler error
Reviewed-by: jlahoda
2024-11-20 10:29:45 +00:00
Jan Lahoda
8bd080bcc9 8341901: Using 'var' keyword switch pattern matching causes compiler error
Reviewed-by: vromero, abimpoudis
2024-11-19 09:13:37 +00:00
Aggelos Biboudis
6811a11e27 8341408: Implement JEP 488: Primitive Types in Patterns, instanceof, and switch (Second Preview)
Reviewed-by: vromero, jlahoda
2024-11-06 14:50:54 +00:00
Jan Lahoda
f0b130e54f 8339296: Record deconstruction pattern in switch fails to compile
Reviewed-by: vromero, mcimadamore
2024-10-24 06:45:16 +00:00
Chen Liang
961e944fa7 8336754: Remodel TypeAnnotation to "has" instead of "be" an Annotation
Co-authored-by: Alex Buckley <abuckley@openjdk.org>
Reviewed-by: asotona
2024-08-16 15:48:54 +00:00
Aggelos Biboudis
c1fdc04ad7 8336781: Erroneous exhaustivity check with boolean switch
Reviewed-by: vromero
2024-07-22 10:29:34 +00:00
Jan Lahoda
2b0adfc2de 8335817: javac AssertionError addLocalVar checkNull
Reviewed-by: vromero, mcimadamore
2024-07-15 11:26:33 +00:00
Jan Lahoda
537d20afbf 8335766: Switch case with pattern matching and guard clause compiles inconsistently
Reviewed-by: abimpoudis
2024-07-10 09:55:56 +00:00
Jan Lahoda
1f09467230 8327368: javac crash when computing exhaustiveness checks
Reviewed-by: vromero
2024-06-05 05:45:59 +00:00
Jan Lahoda
32ee252c45 8333169: javac NullPointerException record.type
Reviewed-by: vromero
2024-05-31 13:14:44 +00:00
Jan Lahoda
66d9bfce29 8332725: Binding patterns with inferred type have erroneous node in the AST
Reviewed-by: asotona
2024-05-30 06:01:18 +00:00
Adam Sotona
cfdc64fcb4 8331291: java.lang.classfile.Attributes class performs a lot of static initializations
Reviewed-by: liach, redestad, vromero
2024-05-24 15:58:34 +00:00
Jan Lahoda
af056c1676 8332106: VerifyError when using switch pattern in this(...) or super(...)
Reviewed-by: abimpoudis, vromero
2024-05-24 06:27:45 +00:00
Aggelos Biboudis
c4557a7b0d 8332463: Byte conditional pattern case element dominates short constant case element
Reviewed-by: vromero
2024-05-22 19:48:23 +00:00
Aggelos Biboudis
ea5eb74a65 8326404: Assertion error when trying to compile switch with fallthrough with pattern
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: vromero
2024-05-14 06:41:58 +00:00
Aggelos Biboudis
3e3f7cf4bd 8330387: Crash with a different types patterns (primitive vs generic) in instanceof
Reviewed-by: vromero
2024-05-13 07:33:42 +00:00
Christian Stein
d43654e573 8331030: langtools/tools/javac/tree tests fail with SOE with fastdebug and -Xcomp
Reviewed-by: jjg, vromero
2024-04-25 06:49:45 +00:00
Vicente Romero
0b9350e8b6 8322992: Javac fails with StackOverflowError when compiling deeply nested synchronized blocks
Reviewed-by: jlahoda
2024-04-22 16:31:32 +00:00
Aggelos Biboudis
4dfcc6df17 8329115: Crash involving return from inner switch
Reviewed-by: jlahoda
2024-03-27 09:38:25 +00:00
Aggelos Biboudis
a5a2eca155 8327683: Crash with primitive type pattern and generic expression in instanceof
Reviewed-by: vromero
2024-03-21 08:02:54 +00:00
Jan Lahoda
5b6b514441 8325362: Allow to create a simple in-memory input JavaFileObject
Reviewed-by: jlaskey, darcy
2024-03-19 09:35:25 +00:00
Aggelos Biboudis
fb390d202c 8327839: Crash with unboxing and widening primitive conversion in switch
Reviewed-by: jlahoda
2024-03-18 13:16:29 +00:00
Jan Lahoda
93a2e773a5 8326129: Java Record Pattern Match leads to infinite loop
Reviewed-by: vromero
2024-02-23 10:08:56 +00:00
Jan Lahoda
cb809f8e04 8325215: Incorrect not exhaustive switch error
Reviewed-by: vromero
2024-02-23 08:56:14 +00:00
Aggelos Biboudis
0c2def0e3e 8325653: Erroneous exhaustivity analysis for primitive patterns
Reviewed-by: vromero
2024-02-14 09:19:18 +00:00
Aggelos Biboudis
e0d98dd301 8325257: jshell reports NoSuchFieldError with instanceof primitive type
Reviewed-by: mcimadamore
2024-02-07 06:59:48 +00:00
Aggelos Biboudis
1733d2ea24 8303374: Implement JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Gavin Bierman <gbierman@openjdk.org>
Co-authored-by: Brian Goetz <briangoetz@openjdk.org>
Co-authored-by: Raffaello Giulietti <rgiulietti@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: vromero, jlahoda
2024-01-31 14:18:13 +00:00
Adam Sotona
2b00ac0d02 8308753: Class-File API transition to Preview
Reviewed-by: ihse, mchung, vromero
2023-12-04 07:07:57 +00:00
Aggelos Biboudis
54957ac55f 8312560: Annotation on Decomposed Record Component in Enhanced For Loop Fails Compilation
Reviewed-by: jlahoda
2023-12-01 14:15:38 +00:00
Aggelos Biboudis
4ba94ef69e 8320145: Compiler should accept final variable in Record Pattern
Reviewed-by: jlahoda
2023-12-01 07:13:39 +00:00
Jan Lahoda
541ff7149f 8318144: Match on enum constants with body compiles but fails with MatchException
Reviewed-by: liach, vromero
2023-11-07 12:05:58 +00:00
Aggelos Biboudis
36de19d462 8317048: VerifyError with unnamed pattern variable and more than one components
Reviewed-by: jlahoda
2023-11-01 13:38:10 +00:00
Aggelos Biboudis
c9d23c3940 8315532: Compiler Implementation for Unnamed Variables & Patterns
8317221: Implementation for javax.lang.model for Unnamed Variables & Patterns

Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Co-authored-by: Gavin Bierman <gbierman@openjdk.org>
Co-authored-by: Brian Goetz <briangoetz@openjdk.org>
Co-authored-by: Joe Darcy <darcy@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: jlahoda, mcimadamore
2023-10-30 10:28:48 +00:00
Aggelos Biboudis
5ca1beb30e 8317300: javac erroneously allows "final" in front of a record pattern
Reviewed-by: jlahoda
2023-10-17 12:57:25 +00:00
Aggelos Biboudis
15588e08ed 8314578: Non-verifiable code is emitted when two guards declare pattern variables in colon-switch
Reviewed-by: vromero
2023-10-17 12:51:57 +00:00
Qing Xiao
741ae06c55 8313613: Use JUnit in langtools/lib tests
Reviewed-by: cstein, asotona
2023-10-16 17:14:34 +00:00
Adam Sotona
ca747f09b6 8315678: Classfile API ConstantPool::entryCount and ConstantPool::entryByIndex methods are confusing
Reviewed-by: briangoetz
2023-09-14 18:30:39 +00:00
Aggelos Biboudis
3b0a6d2a68 8314226: Series of colon-style fallthrough switch cases with guards compiled incorrectly
Reviewed-by: mcimadamore, vromero
2023-09-13 15:09:01 +00:00
Qing Xiao
8f7e29b2cd 8313422: test/langtools/tools/javac 144 test classes uses com.sun.tools.classfile library
Reviewed-by: asotona
2023-09-07 15:37:25 +00:00
Aggelos Biboudis
81f8c57e4a 8314632: Intra-case dominance check fails in the presence of a guard
Reviewed-by: vromero
2023-09-07 12:51:37 +00:00
Jan Lahoda
c386091734 8312984: javac may crash on a record pattern with too few components
Reviewed-by: vromero
2023-08-03 08:37:15 +00:00
Jan Lahoda
1f81e5b19e 8312229: Crash involving yield, switch and anonymous classes
Reviewed-by: vromero
2023-07-26 09:44:50 +00:00
Jan Lahoda
a4412166ec 8311815: Incorrect exhaustivity computation
Reviewed-by: vromero
2023-07-17 08:19:51 +00:00
Jan Lahoda
bbb7ce5137 8311038: Incorrect exhaustivity computation
Reviewed-by: vromero
2023-07-14 08:21:48 +00:00
Jan Lahoda
01623f6a57 8310133: Effectivelly final condition not enforced in guards for binding variables from the same case
Reviewed-by: vromero
2023-06-21 09:16:12 +00:00
Jan Lahoda
a15db1a56c 8302865: Illegal bytecode for break from if with instanceof pattern matching condition
Reviewed-by: vromero
2023-06-21 09:15:48 +00:00
Aggelos Biboudis
32243ef47d 8310128: Switch with unnamed patterns erroneously non-exhaustive
Reviewed-by: vromero, jlahoda
2023-06-16 07:03:28 +00:00
Jan Lahoda
408cadb351 8309467: Pattern dominance should be adjusted
Reviewed-by: vromero
2023-06-12 08:15:53 +00:00
Jan Lahoda
05fb6c6648 8309336: Incorrect switch in enum not reported properly
Reviewed-by: vromero
2023-06-05 06:25:00 +00:00
Aggelos Biboudis
8007599756 8309093: Underscore with brackets
Reviewed-by: jlahoda
2023-06-02 06:14:57 +00:00