Commit Graph

29 Commits

Author SHA1 Message Date
Jan Lahoda
fa08cc62df 8268766: Desugaring of pattern matching enum switch should be improved
Reviewed-by: mcimadamore, psandoz
2021-07-08 11:56:53 +00:00
Jan Lahoda
4f70759175 8270006: Switches with 'case null:' should be exhaustive
Reviewed-by: vromero
2021-07-08 08:03:09 +00:00
Jan Lahoda
820f2900d8 8268859: jshell throws exception while parsing illegal "case true"
Reviewed-by: mcimadamore
2021-07-07 07:26:41 +00:00
Jan Lahoda
815e4af35d 8269802: javac fails to compile nested pattern matching switches
8269808: javac generates class with invalid stack map

Reviewed-by: mcimadamore
2021-07-07 06:24:58 +00:00
Jan Lahoda
a8385feb30 8269354: javac crashes when processing parenthesized pattern in instanceof
Reviewed-by: vromero
2021-07-01 10:10:03 +00:00
Jan Lahoda
4ee400ae43 8268320: Better error recovery for broken patterns in switch
Reviewed-by: vromero
2021-06-30 09:47:22 +00:00
Jan Lahoda
c3c918928c 8269141: Switch statement containing pattern case label element gets in the loop during execution
Reviewed-by: vromero
2021-06-30 08:45:12 +00:00
Jan Lahoda
4eb321298a 8268871: Adjust javac to updated exhaustiveness specification
Reviewed-by: vromero
2021-06-25 09:52:06 +00:00
Guoxiong Li
7ab12856c4 8267610: NPE at at jdk.compiler/com.sun.tools.javac.jvm.Code.emitop
8268748: Javac generates uncorrect bytecodes when using nested pattern variables

Reviewed-by: jlahoda, vromero
2021-06-24 23:07:43 +00:00
Jan Lahoda
bf70620745 8268961: Parenthesized pattern with guards does not work
8268896: Parenthesized pattern is not guarded by source level check

Reviewed-by: vromero
2021-06-23 10:16:42 +00:00
Jan Lahoda
35d867df1f 8268663: Crash when guards contain boolean expression
Reviewed-by: vromero
2021-06-15 09:04:35 +00:00
Jan Lahoda
abe20c188c 8268333: javac crashes when pattern matching switch contains default case which is not last
Reviewed-by: vromero
2021-06-14 14:25:32 +00:00
Jan Lahoda
908aca29ca 8262891: Compiler implementation for Pattern Matching for switch (Preview)
Co-authored-by: Brian Goetz <briangoetz@openjdk.org>
Co-authored-by: Mandy Chung <mchung@openjdk.org>
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: mcimadamore, forax, godin, psandoz, mchung
2021-06-07 07:01:30 +00:00
Jan Lahoda
fdfa1dda08 8264306: Non deterministic generation of java/lang/invoke/MemberName.class
Reviewed-by: shade, jfranck
2021-04-01 11:38:45 +00:00
Jan Lahoda
9cd21b687e 8263590: Rawtypes warnings should be produced for pattern matching in instanceof
Reviewed-by: mcimadamore
2021-03-18 12:37:20 +00:00
Jan Lahoda
d0a8f2f737 8260593: javac can skip a temporary local variable when pattern matching over a local variable
Reviewed-by: vromero
2021-02-08 09:36:29 +00:00
Guoxiong Li
739bbd03c5 8260566: Pattern type X is a subtype of expression type Y message is incorrect
Reviewed-by: jlahoda, tvaleev
2021-01-29 18:27:03 +00:00
Jan Lahoda
235488215b 8250768: javac should be adapted to changes in JEP 12
Reviewed-by: mcimadamore, erikj, jjg, ihse
2021-01-11 10:10:47 +00:00
Jesper Wilhelmsson
555641ede5 Merge 2021-01-07 21:17:35 +00:00
Jan Lahoda
4ffbe841fc 8256266: Binding variables don't correctly support declaration annotations and the final modifier
Reviewed-by: mcimadamore
2021-01-05 11:40:25 +00:00
Guoxiong Li
8435f0daf2 8258525: Some existing tests should use /nodynamiccopyright/ instead of the standard header
Reviewed-by: jjg
2020-12-30 17:20:54 +00:00
Jan Lahoda
18bc95ba51 8250625: Compiler implementation of Pattern Matching for instanceof (Final)
Reviewed-by: vromero
2020-11-05 08:01:33 +00:00
Jan Lahoda
c98417ebca 8250840: some tests use --enable-preview unnecessarily
Reviewed-by: vromero
2020-09-09 07:51:43 +00:00
Jan Lahoda
2f45d46640 8237528: Inefficient compilation of Pattern Matching for instanceof
Avoiding unnecessary cast and comparison in type test pattern desugaring.

Reviewed-by: forax, mcimadamore
2020-01-29 10:37:22 +01:00
Jan Lahoda
a35d087f54 8236670: Conflicting bindings accepted in some cases
Reviewed-by: mcimadamore
2020-01-14 11:10:07 +01:00
Vicente Romero
827e5e3226 8225054: Compiler implementation for records
8225052: javax.lang.model support for records
8225053: Preview APIs support for records
8225055: Javadoc for records
8226314: com.sun.source support for records
8227113: Specification for java.lang.Record
8233526: JVM support for records

Implement records in the compiler and the JVM, including serialization, reflection and APIs support

Co-authored-by: Brian Goetz <brian.goetz@oracle.com>
Co-authored-by: Maurizio Cimadamore <maurizio.cimadamore@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Joe Darcy <joe.darcy@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Chris Hegarty <chris.hegarty@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: mcimadamore, briangoetz, alanb, darcy, chegar, jrose, jlahoda, coleenp, dholmes, lfoltan, mchung, sadayapalam, hannesw, sspitsyn
2019-12-04 15:57:39 -05:00
Jan Lahoda
07be23513b 8234922: No compilation error reported not reported for a binding variable when loop broken with label
Any break outside of a loop should confine the binding variables from the loop's condition to the loop

Reviewed-by: mcimadamore
2019-12-04 09:38:32 +01:00
Jan Lahoda
f26bdf8476 8234899: Compiler reports AssertionError for conditional operator ? : and pattern matching for instanceof
Reviewed-by: mcimadamore
2019-12-04 09:38:31 +01:00
Jan Lahoda
229e0d1631 8231826: Implement javac changes for pattern matching for instanceof
Co-authored-by: Brian Goetz <brian.goetz@oracle.com>
Co-authored-by: Gavin Bierman <gavin.bierman@oracle.com>
Co-authored-by: Maurizio Cimadamore <maurizio.cimadamore@oracle.com>
Co-authored-by: Srikanth Adayapalam <srikanth.adayapalam@oracle.com>
Co-authored-by: Vicente Romero <vicente.romero@oracle.com>
Reviewed-by: mcimadamore
2019-11-27 09:00:01 +01:00