Commit Graph

571 Commits

Author SHA1 Message Date
Vicente Romero
229f41808d 8250629: do not allow C-style array declaration in record components
Reviewed-by: jlahoda
2020-07-31 12:13:52 -04:00
Vicente Romero
0f5e57aa8c 8250741: an annotation interface may not be declared as a local interface
Reviewed-by: jlahoda
2020-07-31 12:05:55 -04:00
Jan Lahoda
27a9a2f64a 8249261: AssertionError in StructuralStuckChecker
Reviewed-by: mcimadamore
2020-07-29 11:34:25 +02:00
Jan Lahoda
b37228e11f 8248641: Trees.getScope returns incorrect results for code inside a rule case
Ensuring rule cases are copied correctly by TreeCopier.

Reviewed-by: vromero
2020-07-29 11:34:24 +02:00
Vicente Romero
6c2ff1781b 8249829: javac is issuing an incorrect static access error
Reviewed-by: jlahoda
2020-07-27 10:12:30 -04:00
Vicente Romero
75d642a467 8243057: compilation of annotated static record fields fails with NPE
Reviewed-by: jlahoda
2020-07-24 10:34:18 -04:00
Vicente Romero
3a69dfb5c5 8245652: some tests at RecordCompilationTests are resetting the wrong compilation options
Reviewed-by: darcy
2020-07-20 12:14:44 -04:00
Vicente Romero
bcd4690bc3 8247790: javac shouldn't allow type variable references from local static declarations
Reviewed-by: jlahoda
2020-07-15 22:36:45 -04:00
Jesper Wilhelmsson
d3d29a4f82 Merge 2020-07-10 02:51:04 +02:00
Vicente Romero
37880ba60d 8242529: javac defines type annotations incorrectly for record members (constructor and property accessor)
Reviewed-by: psandoz, jlahoda
2020-07-09 17:37:53 -04:00
Jan Lahoda
a4b135316c 8244763: Update --release 8 symbol information after JSR 337 MR3
Reviewed-by: jjg, wetmore
2020-05-18 18:20:53 +02:00
Vicente Romero
fc82768478 8247849: permits clause of sealed interfaces should not allow parameterized types
Reviewed-by: jlahoda
2020-06-25 17:48:53 -04:00
Jan Lahoda
31c511e6a5 8246704: --release => \"unknown enum constant PreviewFeature$Feature.TEXT_BLOCKS\"
Use a synthetic annotation instead of inaccessible jdk.internal.PreviewFeature in ct.sym, and avoid resolving that annotation, to prevent errors being printed for the inaccessible types.

Reviewed-by: jlaskey
2020-06-25 11:06:46 +02:00
Jonathan Gibbons
e66a2a3384 8247955: doclint: don't complain about summary/caption when role=presentation
Reviewed-by: prappo
2020-06-23 12:27:31 -07:00
Jonathan Gibbons
8b6d3147fb 8247815: doclint: recategorize "no description for ..." as MISSING, not SYNTAX
Reviewed-by: prappo
2020-06-19 11:04:52 -07:00
Jan Lahoda
226e852831 8242214: NullPointerException in JDK 14 javac compiling a method reference
Ensuring a proper receiver is used to invoke protected method when method reference is unrolled into a lambda.

Reviewed-by: vromero
2020-06-19 14:26:09 +02:00
Jonathan Gibbons
de3923edf9 8247788: DocCommentParser should not reject standalone '>'
Reviewed-by: prappo
2020-06-18 14:07:49 -07:00
Vicente Romero
ecb4cbfd4a 8245842: provide tests for binary compatibility assertions for sealed classes
Reviewed-by: jjg
2020-06-17 14:39:44 -04:00
Vicente Romero
ce4978ffe6 8246257: Annotated record's vararg type component started to be uncompilable with JDK15b24
Reviewed-by: jjg, jlaskey
2020-06-17 13:19:51 -04:00
Adam Sotona
ed4b801771 8238735: NPE compiling lambda expression within conditional expression
The fix saves result type from the first pass through the Attr.visitLambda and returns it after recovery pass to avoid NPE caused by exposure of Type.recoveryType

Reviewed-by: mcimadamore
2020-06-17 13:18:19 +02:00
Jan Lahoda
19c5bfe42f 8247334: Trees.getScope crashes for annotated local records
Reviewed-by: vromero
2020-06-12 13:38:06 +02:00
Jan Lahoda
a5e03e234b 8235564: javac crashes while compiling incorrect method invocation with member reference
Reviewed-by: vromero
2020-06-10 11:01:29 +02:00
Jonathan Gibbons
56abdc178e 8246712: doclint incorrectly reports some HTML elements as empty
Reviewed-by: prappo
2020-06-09 19:34:18 -07:00
Adam Sotona
022d7a19d3 8236108: tools/javac/lambda/LambdaParserTest.java timed out
The patch filters redundant or non-sense combinations of lambdas and it reduces the number of performed sub-tests.

Reviewed-by: vromero
2020-06-09 09:37:53 -04:00
Adam Sotona
63ade9c49c 8236697: Stack overflow with cyclic hierarchy in class file
Implemented minimal necessary cycle detection to avoid stack overflow in c.s.t.j.code.Types::asSuper

Reviewed-by: vromero
2020-06-08 16:07:03 -04:00
Vicente Romero
e90621c169 8246199: 'permits' is a restricted identifier
Reviewed-by: mcimadamore
2020-06-08 11:08:28 -04:00
Jan Lahoda
358714bcd0 8246353: Sealed types not supported by jshell
Reviewed-by: rfield, vromero
2020-06-08 16:59:43 +02:00
Toshio Nakamura
28e219f038 8233829: javac cannot find non-ASCII module name under non-UTF8 environment
Reviewed-by: jjg
2020-07-06 16:08:00 -07:00
Jesper Wilhelmsson
6b8bf62a75 Merge 2020-07-03 00:14:21 +02:00
Jesper Wilhelmsson
55b472251e Merge 2020-06-26 04:15:33 +02:00
Jesper Wilhelmsson
233cac3232 Merge 2020-06-25 03:11:32 +02:00
Jesper Wilhelmsson
4862d0d542 Merge 2020-06-22 18:23:49 +02:00
Jesper Wilhelmsson
a16994ff7b Merge 2020-06-19 00:30:46 +02:00
Joe Darcy
be278bc564 8246222: Rename javac test T6395981.java to be more informative
Reviewed-by: jjg
2020-06-12 13:16:40 -07:00
Jan Lahoda
1b64fb2063 8247334: Trees.getScope crashes for annotated local records
Reviewed-by: vromero
2020-06-12 13:38:06 +02:00
Joe Darcy
a5b5712733 8235496: Start of release updates for JDK 16
8245585: Add SourceVersion.RELEASE_16
8245586: Add source 16 and target 16 to javac
8245544: com/sun/tools/javac/platform/JDKPlatformProvider.java does not support ct.sym with platform versions 16+

Co-authored-by: David Holmes <david.holmes@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: erikj, dholmes, ihse, neugens, jjg, jlahoda, jlaskey, mikael
2020-06-07 20:02:03 -07:00
Vicente Romero
0db1be28c7 8246486: javac doesn't allow a subclass to be declared before a sealed superclass with no permits clause
Reviewed-by: mcimadamore
2020-06-04 19:02:43 -04:00
Jan Lahoda
44ae643b2b 8210649: AssertionError @ jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:244)
Do not clean trees after last round of annotation processing, if the trees won't be re-entered again.

Reviewed-by: vromero
2020-06-02 08:41:36 +02:00
Jan Lahoda
04ad75e788 8241519: javac crashes with wrong module-info.class in module path
If module-info.class is broken, mark the corresponding ModuleSymbol as erroneous.

Reviewed-by: jjg
2020-06-02 08:27:37 +02:00
Vicente Romero
d42bfef8a4 8227046: compiler implementation for sealed classes
8225056: VM support for sealed classes
8227044: javax.lang.model for sealed classes
8227045: Preview APIs support for sealed classes
8227047: Javadoc for sealed types
8245854: JVM TI Specification for sealed classes

Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Reviewed-by: mcimadamore, forax, darcy, dholmes, jlahoda, lfoltan, mchung, sspitsyn, vromero
2020-06-01 17:00:40 -04:00
Adam Sotona
5a57b9f8ec 8245153: Unicode encoded double-quoted empty string does not compile
Fixed parsing of Unicode encoded double-quoted empty strings in c.s.t.j.p.JavaTokenizer::scanString

Reviewed-by: jlaskey
2020-05-29 09:56:05 +02:00
Adam Sotona
4eeb61299f 8244573: java.lang.ArrayIndexOutOfBoundsException thrown for malformed class file
Fixed java.lang.ArrayIndexOutOfBoundsException in com.sun.tools.classfile.Code_attribute.getInstructions() for methods with no instructions

Reviewed-by: vromero
2020-05-30 20:10:18 -04:00
Hannes Wallnöfer
b43f356288 8177280: @see {@link} syntax should allow generic types
8237826: DocTrees should provide getType(DocTreePath) method

Reviewed-by: jjg
2020-05-29 14:28:13 +02:00
Adam Sotona
456fe234ce 8230827: javac gives inappropriate warning about potentially ambiguous methods
Fix of too strict com.sun.tools.javac.comp.Comp:checkPotentiallyAmbiguousOverloads method

Reviewed-by: jlahoda
2020-05-28 10:52:37 +02:00
Jan Lahoda
7671f2716b 8245786: Scope is wrong for ClassTree representing record
Listing RECORD as a class-like Tree Kind while computing Scope.

Reviewed-by: jjg
2020-05-28 13:37:39 +02:00
Adam Sotona
954db3353e 8241312: missing code coverage for records
Added tests for better coverage of records

Reviewed-by: vromero
2020-05-27 10:16:19 -04:00
Jonathan Gibbons
aabcf9f792 8245847: Update Profile.java to not require per-release updates
Reviewed-by: darcy
2020-05-26 13:25:23 -07:00
Joe Darcy
6cbf57aa37 8245147: Refactor and improve utility of test/langtools/tools/javac/versions/Versions.java
Reviewed-by: vromero
2020-05-19 15:17:00 -07:00
Jan Lahoda
ed9cbe252d 8241616: Timestamps on ct.sym entries lead to non-reproducible builds
Generate ct.sym in a reproducible way

Reviewed-by: ihse
2020-04-29 18:35:14 +02:00
Vicente Romero
9efdaacc31 8242478: compiler implementation for records (Second Preview)
Reviewed-by: mcimadamore, jlahoda, darcy
2020-05-17 11:09:52 -04:00
Jonathan Gibbons
49bfbd3bc7 8243417: Clean up com.sun.tools.javac.main.CommandLine
Reviewed-by: prappo
2020-05-13 10:39:35 -07:00
Jan Lahoda
4e55421171 8243548: Javac incorrectly collects enum fields when verifying switch expression exhaustivness
When gathering enum constants for exhaustivness analysis, make sure nested enum classes are not included

Reviewed-by: vromero
2020-05-04 12:28:36 +02:00
Jan Lahoda
1a35219f01 8243557: Inconvenient span for multi-catch error diagnostics
Reviewed-by: vromero
2020-05-04 12:28:35 +02:00
Jonathan Gibbons
009dd60ea3 8241780: Allow \n@ inside inline tags
Reviewed-by: prappo
2020-04-23 16:10:45 -07:00
Mandy Chung
7cc1371059 8238358: Implementation of JEP 371: Hidden Classes
Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: David Holmes <david.holmes@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jamsheed Mohammed C M <jamsheed.c.m@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Co-authored-by: Amy Lu <amy.lu@oracle.com>
Reviewed-by: alanb, cjplummer, coleenp, dholmes, dlong, forax, jlahoda, psandoz, plevart, sspitsyn, vromero
2020-04-21 06:55:38 -07:00
Jan Lahoda
ec1c111c6c 8243074: Misplaced and/or duplicate super or this constructor invocation not attributed
Fully attributing misplaced and/or duplicated super/this constructor invocations

Reviewed-by: mcimadamore
2020-04-20 12:36:09 +02:00
Jan Lahoda
4b6e75dc72 8243047: javac may crash when processing exits in class initializers
Flow should handle invalid exits from class initializers gracefully

Reviewed-by: vromero
2020-04-20 12:36:09 +02:00
Jan Lahoda
df82d9a4b5 8242802: javac crashes when checking equals and hashCode in unresolvable anonymous class
Preventing NullPointerException when a class has an erroneous supertype and does not have an implementation of the equals method.

Reviewed-by: darcy, vromero
2020-04-20 12:36:09 +02:00
Liam Miller-Cushon
4895a19dd1 8241798: Allow enums to have more constants
Reviewed-by: mcimadamore, briangoetz, forax
2020-03-28 16:15:52 -07:00
Roger Riggs
3cf922b3d1 8242462: Residual Cleanup of rmic removal
Reviewed-by: jjg, amlu, erikj, iignatyev, mseledtsov
2020-04-10 16:33:56 -04:00
Jim Laskey
ef8537ec1a 8241741: Implement Text Blocks as a standard feature in javac
Reviewed-by: jlahoda
2020-04-09 10:55:01 -03:00
Adam Sotona
c2efd224ca 8239544: Javac does not respect should-stop.ifNoError policy to stop after CompileState PARSE, ENTER and PROCESS
JavaCompiler patch fixing its response to should-stop.ifNoError= option for PARSE, ENTER and PROCESS compiler states + new T8239544.java matrix regression test

Reviewed-by: jlaskey, jlahoda
2020-04-08 15:00:39 +02:00
Liam Miller-Cushon
25642dd303 8035787: SourcePositions are wrong for Strings concatenated with '+' operator
Reviewed-by: jlahoda
2020-04-06 15:40:16 -07:00
Vicente Romero
bf54c47471 8240970: Some tests fail when run with JCov
Reviewed-by: jjg
2020-03-18 14:33:05 -04:00
Jan Lahoda
6ddb0f2b2c 8240964: Compilation error thrown when long literal used with yield
Ensuring yield followed by a long literal is recognized as a yield statement.

Reviewed-by: mcimadamore
2020-03-16 13:06:35 +01:00
Vicente Romero
f819e417f9 8235339: test TargetAnnoCombo.java is failing after new target RECORD_COMPONENT was added
Reviewed-by: darcy
2020-03-14 17:08:25 -04:00
Vicente Romero
afbe2286e2 8239447: compiler error for annotations applied to record components with target METHOD
Reviewed-by: mcimadamore
2020-03-13 10:29:03 -04:00
Adam Sotona
5eef59d22d 8235216: typo in test filename
Renamed MutliReleaseModuleInfoTest.java to MultiReleaseModuleInfoTest.java

Reviewed-by: jjg
2020-03-10 17:33:37 +01:00
Vicente Romero
4a32eda417 8240454: incorrect error message: as of release 13, 'record' is a restricted type name
Reviewed-by: jlahoda
2020-03-05 16:46:24 -05:00
Jan Lahoda
0c9983887d 8228451: NPE in Attr.java when -XDshould-stop.ifError=FLOW
Avoiding parsing of compound assignment as a type.

Reviewed-by: jjg, vromero
2020-03-04 13:43:27 +01:00
Joe Darcy
d4a069b33b 8237450: JDK13 annotation processors not run when a supported annotation type specifies a module
Initial fix suggested by jjg based on through analysis by Jeremy Kuhn.

Reviewed-by: jjg
2020-02-18 17:03:54 -08:00
Vicente Romero
4c707c1df3 8238838: spurious error message for compact constructors with throws clause
Reviewed-by: mcimadamore
2020-02-13 14:13:08 -05: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
Adam Sotona
f2013ac247 8236997: tools/javac tests fail with --illegal-access=deny
Correctly exporting packages to tests.

Reviewed-by: jlahoda
2020-01-28 09:13:27 +01:00
Vicente Romero
64288e1e76 8235149: javac parser is too aggressive on ambiguous expressions using identifier: record
Reviewed-by: mcimadamore
2020-01-27 18:50:19 -05:00
Vicente Romero
0f98701e87 8236210: javac generates wrong annotation for fields generated from record components
Reviewed-by: mcimadamore
2020-01-23 19:20:11 -05:00
Mikael Vidstedt
eef726a99a 8237601: test/langtools/tools/javac/warnings/MaxDiagsRecompile.java fails after JDK-8237589
Reviewed-by: dholmes
2020-01-21 17:37:18 -08:00
Mikael Vidstedt
3318314c7c 8237589: Fix copyright header formatting
Reviewed-by: jjg, serb, iris, jwilhelm
2020-01-21 14:23:01 -08:00
Jesper Wilhelmsson
51d5164ca2 Merge 2020-01-16 04:09:50 +01:00
Jan Lahoda
8787b9a66d 8233655: NPE at jdk.compiler/com.sun.tools.javac.comp.Flow$FlowAnalyzer.visitApply
Ensuring that errors reported during speculative attribution that belong to a different file are not lost.

Reviewed-by: mcimadamore
2020-01-15 11:31:16 +01:00
Vicente Romero
5ff1d72185 8236005: local records shouldn't capture any non-static state from any enclosing type
Reviewed-by: mcimadamore
2020-01-14 07:07:43 -05:00
Jan Lahoda
a35d087f54 8236670: Conflicting bindings accepted in some cases
Reviewed-by: mcimadamore
2020-01-14 11:10:07 +01:00
Jesper Wilhelmsson
d34f561de0 Merge 2020-01-15 20:41:46 +01:00
Jan Lahoda
8e2c1c68f6 8236546: Yield with boolean expression and Object target type crashes javac
The whenTrue and whenFalse sets need to be merged for non-boolean expressions.

Reviewed-by: mcimadamore
2020-01-13 10:50:31 +01:00
Vicente Romero
4692bc58eb 8236841: compact constructor parameters are always final
Reviewed-by: mcimadamore
2020-01-10 15:32:04 -05:00
Mandy Chung
fe8e1aacd1 8225773: jdeps --check produces NPE if there are missing module dependences
Reviewed-by: alanb
2020-01-10 11:50:54 -08:00
Mandy Chung
b7e74ef62f 8229396: jdeps ignores multi-release when generate-module-info used on command line
Reviewed-by: alanb
2020-01-10 11:48:16 -08:00
Vicente Romero
ff77d06f17 8236597: issues inferring type annotations on records
Reviewed-by: mcimadamore
2020-01-15 10:45:03 -05:00
Vicente Romero
ddcac6f066 8236682: Javac generates a redundant FieldRef constant for record fields
Reviewed-by: mcimadamore
2020-01-14 21:49:43 -05:00
Jesper Wilhelmsson
913b8702d1 Merge 2020-01-13 15:40:09 +01:00
Jesper Wilhelmsson
943b87ddde Merge 2020-01-09 20:21:53 +01:00
Jesper Wilhelmsson
257a1bb854 Merge 2020-01-08 16:03:32 +01:00
Vicente Romero
50a56141ba 8234445: spurious error message for record constructors with receiver parameters
Reviewed-by: mcimadamore
2020-01-07 09:21:07 -05:00
Vicente Romero
be6b4aab40 8236692: static final fields without initializer are accepted by javac
Reviewed-by: mcimadamore
2020-01-08 15:18:58 -05:00
Jan Lahoda
ad5ea72286 8235541: Extend javax.lang.model to cover binding variables
Reviewed-by: darcy
2019-12-09 09:40:09 +01:00
Jonathan Gibbons
d8d4cd6508 8235597: Extend support for -XDaccessInternalAPI to plugin modules
Reviewed-by: mcimadamore, jlahoda
2019-12-11 16:32:49 -08:00
Jonathan Gibbons
75acf956f1 Merge 2019-12-11 15:34:19 -08:00
Jonathan Gibbons
93b7d283d8 8214916: SourceLauncherTest fails on exploded image
Reviewed-by: ksrini
2019-12-11 15:33:17 -08:00
Vicente Romero
69c1729e26 8234101: Compilation error thrown when repeating annotation is used on record component
Reviewed-by: jlahoda
2019-12-11 15:31:40 -05:00
Jeremy Kuhn
cbe604cf5d 8235457: Crash when reporting a message about an annotation on a module
8235458: Problem caused by imports in a module-info.java file

Reviewed-by: jjg
2019-12-11 11:55:50 -08:00
Jonathan Gibbons
589f23568a 8234689: facilitate writing additional custom attributes in a class file
Reviewed-by: jlahoda
2019-12-09 12:27:57 -08:00
Jonathan Gibbons
45b8d09e1b 8234211: allow discoverable javac plugins to be invoked by default
Reviewed-by: jlahoda
2019-12-09 10:44:02 -08:00
Vicente Romero
bf2f855cd7 8235446: confusing error message for records with no parens
Reviewed-by: mcimadamore
2019-12-06 14:23:17 -05:00
Vicente Romero
9695ddfffc 8234445: spurious error message for record constructors with receiver parameters
Reviewed-by: mcimadamore
2019-12-19 11:46:35 -05:00
Jim Laskey
945c8d555b 8232681: ArrayIndexOutOfBoundsException with text blocks in javac when using -Xlint
Reviewed-by: sundar
2019-12-05 09:22:21 -04: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
Jim Laskey
234f326d79 8233116: Escape Sequences For Line Continuation and White Space (Preview)
Reviewed-by: vromero, jlahoda, bchristi, mcimadamore
2019-12-03 08:35:21 -04: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
Srikanth Adayapalam
05ca3218d9 8234729: Javac should eagerly change code generation for method references to avert IllegalAccessError in future
Reviewed-by: mcimadamore
2019-11-26 11:13:53 +05:30
Jonathan Gibbons
6025207be8 8234687: change javap reporting on unknown attributes
Reviewed-by: mchung
2019-11-22 16:26:35 -08:00
Jaikiran Pai
0435ec1aaa 8232170: FSInfo#getJarClassPath throws an exception not declared in its throws clause
Reviewed-by: jjg
2019-11-22 10:38:35 -08:00
Per Lidén
5cb6271830 8234382: Test tools/javac/processing/model/testgetallmembers/Main.java using too small heap
Reviewed-by: eosterlund, tschatzl
2019-11-20 10:37:46 +01:00
Jie Fu
368b6b5a2d 8234183: [TESTBUG] tools/javac/api/TestModuleUnnamedPackage.java fails to compile
Reviewed-by: jjg
2019-11-14 12:42:44 -08:00
Joe Darcy
c64756158f 8233096: Update javax.lang.model for switch expressions
Reviewed-by: jjg, jlahoda
2019-11-13 15:16:45 -08:00
Jonathan Gibbons
71a86af40e 8234025: Elements.getPackageElement(ModuleElement,CharSequence) returns null for unnamed package
Reviewed-by: jlahoda
2019-11-13 10:33:00 -08:00
Jan Lahoda
29852ecd80 8232684: Make switch expressions final
Reviewed-by: alanb, mcimadamore, kvn
2019-11-12 06:32:13 +00:00
Vicente Romero
89e0d29101 8235778: No compilation error reported when a record is declared in a local class
Reviewed-by: mcimadamore
2019-12-16 15:33:03 -05:00
Joe Darcy
890826bf5b 8225361: Start of release updates for JDK 15
8235497: Add SourceVersion.RELEASE_15
8235528: Add source 15 and target 15 to javac

Reviewed-by: erikj, jjg, jlahoda, dholmes, alanb, hseigel, mikael, chegar
2019-12-10 16:38:53 -08:00
Jan Lahoda
7a006b3608 8230847: Trees.getScope may crash when invoked for statement inside switch
More thoroughly avoiding side-effects when attributing (to) for Trees.getScope.

Reviewed-by: mcimadamore
2019-11-04 10:58:14 +01:00
Vojin Jovanovic
29f2d74173 8232806: Introduce a system property to disable eager lambda initialization
Reviewed-by: briangoetz, mr, psandoz, forax
2019-10-28 15:03:36 +01:00
Jan Lahoda
a1894385b3 8226585: Improve javac messages for using a preview API
Avoiding deprecation for removal for APIs associated with preview features, the features are marked with an annotation, and errors/warnings are produced for them based on the annotation.

Co-authored-by: Joe Darcy <joe.darcy@oracle.com>
Reviewed-by: erikj, mcimadamore, alanb
2019-10-21 15:38:26 +02:00
Brad Corso
3e8d409cee 8230162: ScopeImpl.remove() has O(N) performance
Reviewed-by: jlahoda
2019-10-08 15:43:38 +02:00
Jan Lahoda
a51a8527e7 8228460: bootstrap class path not set in conjunction with -source 11
Ensuring implicit system module path is checked for the no-bootclasspath warning for -source >= 9.

Reviewed-by: vromero
2019-09-18 10:41:18 +02:00
Jan Lahoda
2fa3eddd3c 8177068: incomplete classpath causes NPE in Flow
Undo completions that failed during speculative attribution, so that the appropriate CompletionFailures are thrown again and properly reported.

Reviewed-by: vromero
2019-09-05 12:39:48 +02:00
Joe Darcy
f14e213524 8230337: Clarify intention of Elements.{getPackageOf, getModuleOf}
Reviewed-by: jjg
2019-08-30 11:26:48 -07:00
Jan Lahoda
1d71dd8604 8230105: -XDfind=diamond crashes
Avoiding side-effects in Analyzer's speculative attribution.

Reviewed-by: mcimadamore, vromero
2019-08-30 12:24:16 +02:00
Jan Lahoda
f033152eae 8228502: javac crashed on a broken classfile with ConstantValue attribute on a field of type Object
Produce an error when reading a classfile with a field with ConstantValue with a wrong type.

Reviewed-by: vromero
2019-08-13 10:27:34 +02:00
Jan Lahoda
36ae680f2a 8228647: Broken enum produce inconvenient errors and AST
Improving error recovery for misplace members in enums.

Reviewed-by: vromero
2019-08-13 10:27:33 +02:00
Jan Lahoda
6e86f5b47b 8227922: DocTreeScanner does not dive into AttributeTree.getValue() and LiteralTree.getBody()
DocTreeScanner.visitAttribute and visitLiteral have to scan through the subnodes of AttributeTree and LiteralTree, respectivelly.

Reviewed-by: vromero
2019-08-13 10:27:32 +02:00
Christoph Langer
d3fa36896e 8228571: [TESTBUG] Fix tests failing on non-aot platforms after JDK-8227512
Reviewed-by: iignatyev, jjg
2019-07-26 09:06:03 +02:00
Jan Lahoda
03270bb92a 8227923: End position of EndElementTree is -1
Fixing end positions for DocTrees EndElementTree, EntityTree and CommentTree.

Reviewed-by: jjg
2019-07-22 12:21:18 +02:00
Matthias Baesken
c3bd80322e 8227247: tools/sjavac/IdleShutdown.java fails with AssertionError: Error too big on windows
Reviewed-by: jjg, stuefe
2019-07-10 11:11:30 +02:00
Mikael Vidstedt
f08a9de3b2 Merge 2019-07-17 04:33:37 -07:00
Jan Lahoda
c0d870559f 8227640: javac crashes on text blocks with invalid escapes
Do not translate escape sequences if text block contains illegal escapes.

Reviewed-by: jlaskey
2019-07-16 10:48:22 +02:00
Pengfei Li
a5388f21b7 8227512: [TESTBUG] Fix JTReg javac test failures with Graal
Reviewed-by: mcimadamore
2019-07-16 00:57:00 +00:00
Jan Lahoda
32a7e50bee 8220041: NullPointerException at jdk.compiler/com.sun.tools.javac.jvm.Code.emitop0
LambdaToMethod must correctly capture local variables inside switch expressions inside local variable initializers.

Reviewed-by: mcimadamore, vromero
2019-07-10 09:04:42 +02:00
Mikael Vidstedt
e9d003926b Merge 2019-07-10 07:27:58 -07:00
Jan Lahoda
d24296edf4 8223443: Calling Trees.getScope early changes names of local/anonymous classes
Ensure Trees.getScope does not affect the rest of the compilation.

Reviewed-by: mcimadamore
2019-07-09 09:20:04 +02:00
Jan Lahoda
c4213848c0 8227010: Error recovery after local variable redeclaration can be improved
Entering duplicate local variables into the current scope so that the new variable is used instead of the previous variable.

Reviewed-by: mcimadamore
2019-07-04 16:51:24 +02:00
Mikael Vidstedt
c200fc1f34 Merge 2019-07-03 07:56:41 -07:00
Jesper Wilhelmsson
37599ff955 Merge 2019-06-29 05:26:55 +02:00
Jan Lahoda
e81d3fa8c3 8226510: No compilation error when switch expression has no result expressions
Ensure a compile-time error is produced when there are no result expressions in an switch expression.

Reviewed-by: vromero
2019-06-27 10:39:27 +02:00
Jonathan Gibbons
454f9f9fd0 8225748: Use SHA-256 for javap classfile checksum
Reviewed-by: mchung
2019-06-18 11:52:57 -07:00
Jesper Wilhelmsson
dc82364e05 Merge 2019-06-18 22:48:27 +02:00
Joe Darcy
51cf24fcc0 8222369: ExecutableElement.getReceiverType returns null instead of NOTYPE
Reviewed-by: jjg
2019-06-13 16:39:20 -07:00
Joe Darcy
aeedfd44b0 8164819: Make javac's toString() on annotation objects consistent with core reflection
Reviewed-by: jjg, coleenp
2019-06-13 11:50:45 -07:00
Jan Lahoda
1dd6e7a3eb 8226522: No compilation error reported when yield is used in incorrect context
Reviewed-by: mcimadamore
2019-07-02 09:14:51 +02:00
Hannes Wallnöfer
3353016bbc 8225671: Support HTML 5 character references in javadoc
Reviewed-by: jjg
2019-06-12 23:21:24 +02:00