235 Commits

Author SHA1 Message Date
Maurizio Cimadamore
fd0031d702 8152411: Regression: inference fails to reject incompatible upper bounds
Wrong undet variable comparison in propagation optimization

Reviewed-by: vromero
2016-03-23 16:59:02 +00:00
Alan Bateman
001ebb3a72 8142968: Module System implementation
Initial integration of JEP 200, JEP 260, JEP 261, and JEP 282

Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com>
Co-authored-by: Vicente Romero <vicente.romero@oracle.com>
Co-authored-by: Andreas Lundblad <andreas.lundblad@oracle.com>
Co-authored-by: Andrey Nazarov <andrey.x.nazarov@oracle.com>
Co-authored-by: Chris Hegarty <chris.hegarty@oracle.com>
Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Kumar Srinivasan <kumar.x.srinivasan@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: jjg, jlahoda, vromero, mcimadamore, bpatel, ksrini, darcy, anazarov, dfuchs
2016-03-17 19:04:28 +00:00
Srikanth Adayapalam
3a3ef10033 8148930: Incorrect erasure of exceptions in override-equivalent dual interface impl
Before computing intersection of thrown types, javac must make sure type variables come from the same set.

Reviewed-by: mcimadamore
2016-03-07 18:49:02 +05:30
Srikanth Adayapalam
460020d183 8151134: Fix bug id in test for JDK-8151018
Reviewed-by: jlahoda
2016-03-03 15:07:29 +05:30
Srikanth Adayapalam
433d2a7dbb 8151018: javac should emit a clearer diagnostic when a <> inferred anonymous type's non-private methods don't override super's
Reviewed-by: mcimadamore
2016-03-03 06:10:58 +05:30
Maurizio Cimadamore
8aa9bf5cc6 8148213: Regression: nested unchecked call does not trigger erasure of return type
FreeTypeListener was deferred too much and caused loss of unchecked warning while in the middle of overload

Reviewed-by: vromero
2016-01-28 14:06:27 +00:00
Maurizio Cimadamore
9dcc8b2068 8147493: regression when type-checking unchecked method calls
Shared warner in Attr.checkMethod leads to spurious inference errors

Reviewed-by: vromero
2016-01-20 10:50:28 +00:00
Dan Smith
c5a1a9a3e0 7190296: Test for type containment during bounds checking
Reviewed-by: mcimadamore
2015-12-17 15:46:37 -07:00
Vassili Igouchkine
9c33078299 8145342: Some copyright notices are inconsistently and ill formatted
Adjusted formatting of copyright notices.

Reviewed-by: darcy, alundblad
2015-12-14 20:18:19 +01:00
Srikanth Adayapalam
3b399ff099 8078660: Misleading recommendation from diamond finder
Javac should recommend diamond usage if that could lead to a change in program behavior.

Reviewed-by: mcimadamore
2015-11-26 17:38:15 +05:30
Maurizio Cimadamore
875bccb11e 8067767: type inference performance regression
Overhaul implememntation of inference incorporation

Reviewed-by: vromero
2015-11-19 16:43:11 +00:00
Srikanth Adayapalam
b79126e437 8073616: Duplicate error message: cannot inherit from final (class) F
Ensure that the compiler does not emit duplicate errors at slightly different source positions.

Reviewed-by: mcimadamore
2015-11-13 18:09:36 +05:30
Maurizio Cimadamore
e0f654819b 8141613: Compiler fails to infer generic type
Repeated capture of same expression leads to erroneous inference constraints

Reviewed-by: vromero
2015-11-10 11:49:14 +00:00
Srikanth Adayapalam
9c310602ec 8075799: Extraneous access checks implemented by javac
Allow anonymous class constructors to refer to inaccessible types.

Reviewed-by: mcimadamore
2015-10-07 19:35:43 +05:30
Srikanth Adayapalam
ea13770069 8133135: Compiler internall error (NPE) on anonymous class defined by qualified instance creation expression with diamond
Reviewed-by: mcimadamore
2015-10-05 15:41:29 +05:30
Srikanth Adayapalam
0ea96ddfe4 8132535: Compiler fails with diamond anonymous class creation with intersection bound of enclosing class
Reviewed-by: mcimadamore
2015-10-01 19:47:06 +05:30
Maurizio Cimadamore
981c6dc298 8078093: Severe compiler performance regression Java 7 to 8 for nested method invocations
Add infrastructure to avoid combinatorial explosion of method argument attributions

Reviewed-by: jlahoda, vromero, dlsmith
2015-09-15 13:43:44 +01:00
Maurizio Cimadamore
379f2540aa 8077306: Recursive implementation of List.map leads to stack overflow
Recusrive implementation of List.map uses too much stack; switch to iterative version.

Reviewed-by: jlahoda
2015-09-14 11:26:14 +01:00
Maurizio Cimadamore
2f46e61a83 8129962: Investigate performance improvements in langtools combo tests
New combo API that runs all combo instances in a shared javac context (whenever possible).

Reviewed-by: jjg, jlahoda, vromero
2015-08-31 17:33:34 +01:00
Andreas Lundblad
8d0ebb66bd 8133671: langtools tests have bad license
Dropped classpath exception from copyright notice in tests.

Reviewed-by: jjg
2015-08-26 09:02:02 +02:00
Maurizio Cimadamore
787325090c 8129214: Access error when unboxing a primitive whose target is a type-variable in a different package
Missing erasure when unboxing type in Lower

Reviewed-by: jlahoda
2015-07-30 13:21:01 +01:00
Maurizio Cimadamore
4ae1cb2cd6 8130304: Inference: NodeNotFoundException thrown with deep generic method call chain
Bug in Tarjan implementation is generating node ids which can overflow 32 bits

Reviewed-by: vromero
2015-07-17 12:46:07 +01:00
Liam Miller-Cushon
7d78c183c4 8130803: add regression test related to fix for JDK-8078024
Reviewed-by: mcimadamore
2015-07-09 11:06:48 -07:00
Sonali Goel
08aea23120 8080826: Group 15: golden files for tests in tools/javac/generics/type* dirs
Reviewed-by: jjg
2015-06-17 13:20:33 -07:00
Srikanth Adayapalam
7dd4ada04b 8081521: Compiler has trouble compiling nested diamond allocation constructs involving anonymous classes
Reviewed-by: mcimadamore
2015-06-05 18:43:11 +05:30
Mandy Chung
ab120497cf 8074432: Move jdeps and javap to jdk.jdeps module
Reviewed-by: jjg, alanb, erikj
2015-05-27 13:25:18 -07:00
Alexander Kulyakhtin
b6262441ad 8076543: Add @modules as needed to the langtools tests
Reviewed-by: jjg, shurailine
2015-05-21 11:41:04 -07:00
Jan Lahoda
9264fe218f 8080572: langtools/test/tools/javac/generics/T5011073.java failing
Test/tools/javac/generics/InterfaceCast1.java defines a top-level Set, moving it to a separate directory to avoid clashes.

Reviewed-by: mcimadamore
2015-05-18 14:48:41 +02:00
Sonali Goel
945f55124f 8075166: Group 14d: golden files for tests in tools/javac/generics/wildcards dir
Reviewed-by: jjg
2015-05-15 18:03:51 -07:00
Sonali Goel
4676493261 8080539: Remove few test files that did not get removed with the patch
Reviewed-by: jjg
2015-05-15 17:47:03 -07:00
Sonali Goel
e16a945d3c 8074514: Group 13d: golden files for tests in tools/javac/generics dir
Reviewed-by: jjg
2015-05-15 17:43:21 -07:00
Sonali Goel
8f711841fa 8075165: Group 14c: golden files for tests in tools/javac/generics/wildcards dir
Reviewed-by: jjg, vromero
2015-05-15 17:12:58 -07:00
Sonali Goel
395f1173a9 8075164: Group 14b: golden files for tests in tools/javac/generics/wildcards dir
Reviewed-by: jjg, vromero
2015-05-15 16:59:34 -07:00
Sonali Goel
f6428eb2bb 8074425: Group 13b: golden files for tests in tools/javac/generics dir
Reviewed-by: jjg, darcy, mcimadamore
2015-05-15 16:53:42 -07:00
Sonali Goel
1ebb022e1c 8075163: Group 14a: golden files for tests in tools/javac/generics/wildcards dir
Reviewed-by: jjg, vromero
2015-05-15 16:18:16 -07:00
Sonali Goel
491703889c 8074417: Group 13a: golden files for tests in tools/javac/generics dir
Reviewed-by: jjg, mcimadamore
2015-05-15 09:53:08 -07:00
Sonali Goel
11d7b1e161 8074502: Group 13c: golden files for tests in tools/javac/generics dir
Reviewed-by: jjg, mcimadamore
2015-05-15 09:30:55 -07:00
Srikanth Adayapalam
e57ef90dd9 8078473: javac diamond finder crashes when used to build java.base module
Reviewed-by: mcimadamore
2015-04-27 17:36:20 +05:30
Srikanth Adayapalam
f2ee4e4240 8078592: Compiler fails to reject erroneous use of diamond with anonymous classes involving "fresh" type variables
Reviewed-by: mcimadamore
2015-04-25 15:59:54 +05:30
Vicente Romero
4693c79e67 8078433: javac, some tests are failing after JDK-8078024 because of golden files mismatch
Reviewed-by: darcy
2015-04-22 11:39:06 -07:00
Vicente Romero
8c8261cbad 8078024: javac, several incorporation steps are silently failing when an error should be reported
Reviewed-by: mcimadamore
2015-04-22 09:44:15 -07:00
Andrey Nazarov
9c48863bb1 8075610: java.desktop module dependency can be eliminated in tools/javac/generics/inference/5073060/GenericsAndPackages.java
Reviewed-by: jjg
2015-03-26 17:39:04 +01:00
Srikanth Adayapalam
8afd89977c 8062373: Project Coin: diamond and anonymous classes
Allow diamond inference in combination with anonymous class instance creation

Co-authored-by: Maurizio Cimadamore <maurizio.cimadamore@oracle.com>
Reviewed-by: mcimadamore, vromero
2015-03-30 17:09:14 +05:30
Maurizio Cimadamore
24c51e1e1b 8048838: type inference performance regression
Reduce redundant bounds before attempting to do pairwise lub computation during bound incorporation.

Reviewed-by: vromero
2015-03-19 11:40:47 +00:00
Dan Smith
13490088bf 8039214: Inference should not map capture variables to their upper bounds
Update to Types.containsType; related adjustment to most-specific test

Reviewed-by: mcimadamore, vromero
2015-02-20 17:05:13 -07:00
Srikanth Adayapalam
1be81e358c 8062358: ClassCastException in TransTypes.visitApply
Incorrect handling of subtype relations involving lower bounded wildcard causes ClassCastException

Reviewed-by: vromero, dlsmith
2015-01-13 10:17:25 +01:00
Srikanth Adayapalam
5de84c2836 8043741: VerifyError due to missing checkcast
Proto-type is not set correctly for NULLCHK synthetic trees

Reviewed-by: mcimadamore
2015-01-09 15:49:42 +00:00
Maurizio Cimadamore
eb3798a14a 8067663: Add bugId to tests that have been modified as part of JDK-8064365
Add missing bug id to modified tests

Reviewed-by: jlahoda
2014-12-16 13:44:22 +00:00
Maurizio Cimadamore
3076062240 8064365: Better support for finder capabilities in target-typing context
Add new framework to allow for easy creation of finder-like capabilities.

Reviewed-by: jjg, jlahoda
2014-12-12 18:07:24 +00:00
Maurizio Cimadamore
02df6a4564 8065986: Compiler fails to NullPointerException when calling super with Object<>()
Missing POLY kind selector on recursive constructor calls with poly arguments

Reviewed-by: vromero
2014-11-28 11:45:56 +00:00