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
Aggelos Biboudis
4f3a95af2f
8309054: Parsing of erroneous patterns succeeds
...
Reviewed-by: jlahoda
2023-05-31 09:37:58 +00:00
Aggelos Biboudis
4500bb7a67
8308727: Compiler should accept final unnamed variables in try-with-resources
...
Reviewed-by: jlahoda
2023-05-25 08:10:02 +00:00
Aggelos Biboudis
8aa50288a1
8302344: Compiler Implementation for Unnamed patterns and variables (Preview)
...
8307444: java.lang.AssertionError when using unnamed patterns
8307482: Compiler should accept var _ in nested patterns in switch case
8307007: Implementation for javax.lang.model for unnamed variables (Preview)
8308312: Compiler should fail when a local variable declaration does not include an Identifier and does not have an initializer
8308309: Compiler should accept mixed masked and unmasked variables in lambda parameters
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: vromero, darcy
2023-05-22 08:52:36 +00:00
Jan Lahoda
eaa80ad08c
8300543: Compiler Implementation for Pattern Matching for switch
...
8300545: Compiler Implementation for Record Patterns
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Reviewed-by: vromero, mcimadamore
2023-05-22 04:24:06 +00:00
Jan Lahoda
2aec910ea4
8304883: Record Deconstruction causes bytecode error
...
Reviewed-by: vromero
2023-04-05 10:29:22 +00:00
Jan Lahoda
138cdc9283
8304694: Runtime exception thrown when break stmt is missing
...
Reviewed-by: vromero
2023-03-27 15:01:45 +00:00
Jan Lahoda
dc55a7fc87
8302202: Incorrect desugaring of null-allowed nested patterns
...
Reviewed-by: vromero
2023-02-17 12:55:47 +00:00
Aggelos Biboudis
3b05a94c36
8301858: Verification error when compiling switch with record patterns
...
Reviewed-by: vromero
2023-02-09 16:03:34 +00:00
Archie L. Cobbs
8c01b6e66b
8221580: Confusing diagnostic for assigning a static final field in a constructor
...
Reviewed-by: vromero
2023-02-06 18:22:22 +00:00
Jesper Wilhelmsson
fc9f8baf56
Merge
2023-01-18 23:29:12 +00:00
Jan Lahoda
c1b4212a53
8300195: Fall-through issue occurs when using record pattern in switch statements
...
Reviewed-by: vromero
2023-01-18 10:43:53 +00:00
Archie L. Cobbs
382fe51b6d
8163229: several regression tests have a main method that is never executed
...
Reviewed-by: vromero
2023-01-17 04:43:40 +00:00
Jan Lahoda
cf63f2e3ea
8298184: Incorrect record component type in record patterns
...
Reviewed-by: vromero
2022-12-07 12:03:50 +00:00
Jan Lahoda
2300ed458d
8291769: Translation of switch with record patterns could be improved
...
Reviewed-by: vromero
2022-12-05 12:04:23 +00:00
Aggelos Biboudis
2cb64a7557
8294943: Implement record patterns in enhanced for
...
8296802: Parse errors when deconstructing a record using the enhanced for loop of JEP 432
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Reviewed-by: mcimadamore, vromero
2022-12-01 12:40:09 +00:00
Jan Lahoda
b60cce6f3b
8297118: Change IncompatibleClassChangeError to MatchException for exhaustive switch statements and switch expressions
...
Reviewed-by: vromero
2022-12-01 10:51:57 +00:00
Jan Lahoda
756dd5bb0d
8294942: Compiler implementation for Record Patterns (Second Preview)
...
8294945: Compiler implementation for Pattern Matching for switch (Fourth Preview)
Co-authored-by: Aggelos Biboudis <abimpoudis@openjdk.org>
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Reviewed-by: mcimadamore, vromero
2022-12-01 08:02:40 +00:00
Joe Darcy
e2269fd2ca
8296968: Update langtools tests to use @enablePreview
...
Reviewed-by: sundar, jjg
2022-11-17 00:49:53 +00:00
Jan Lahoda
7bc9692a51
8294670: Enhanced switch statements have an implicit default which does not complete normally
...
Reviewed-by: vromero
2022-10-20 15:21:26 +00:00
Jan Lahoda
0be2b2c2f1
8292756: java.lang.AssertionError at at jdk.compiler/com.sun.tools.javac.code.Scope$ScopeImpl.leave(Scope.java:386)
...
Reviewed-by: vromero
2022-09-22 14:33:07 +00:00
Aggelos Biboudis
1169a15936
8291657: Javac assertion when compiling a method call with switch expression as argument
...
Reviewed-by: jlahoda
2022-09-14 06:48:01 +00:00
Aggelos Biboudis
9444a081cc
8290709: Incorrect dominance error for unconditional pattern vs. null
...
Reviewed-by: jlahoda
2022-09-01 16:09:03 +00:00
Joe Darcy
cc2861a993
8290901: Reduce use of -source in langtools tests
...
Reviewed-by: jjg
2022-07-29 17:35:22 +00:00
Jesper Wilhelmsson
c79baaa811
Merge
2022-07-11 16:15:49 +00:00
Aggelos Biboudis
bba6be79e0
8269674: Improve testing of parenthesized patterns
...
Reviewed-by: jlahoda
2022-07-11 11:13:55 +00:00
Jan Lahoda
25f4b04365
8289894: A NullPointerException thrown from guard expression
...
Reviewed-by: vromero
2022-07-11 08:59:32 +00:00