Maurizio Cimadamore
defbb67771
7041019: Bogus type-variable substitution with array types with dependencies on accessibility check
...
Call to upperBound() when performing type-variable substitution on element type leads to unsoundness
Reviewed-by: jjg
2013-07-17 14:14:49 +01:00
Maurizio Cimadamore
941752ea25
8012242: Lambda compatibility and checked exceptions
...
Inference variables in 'throws' clause with no constraints should be inferred as RuntimeException
Reviewed-by: jjg, vromero
2013-07-17 14:04:01 +01:00
Robert Field
d3d1da337a
8016281: The SAM method should be passed to the metafactory as a MethodType not a MethodHandle
...
8020010: Move lambda bridge creation from metafactory and VM to compiler
Langtools/javac component of the bridge support and MethodType vs. MethodHandle changes.
Reviewed-by: jjg, vromero, briangoetz, forax
2013-07-11 14:07:39 +01:00
Maurizio Cimadamore
7229f89614
8019824: very long error messages on inference error
...
Inference error messages shows several spurious captured variables generated during an inference loop
Reviewed-by: jjg, vromero
2013-07-05 11:05:02 +01:00
Maurizio Cimadamore
abaf1a5c51
8015432: javac crashes with stack overflow when method called recursively from nested generic call
...
Check.checkMethod should only be called after inference has completed
Reviewed-by: jjg, vromero
2013-06-06 15:35:05 +01:00
Maurizio Cimadamore
07baf8072a
8008627: Compiler mishandles three-way return-type-substitutability
...
Compiler should not enforce an order in how ambiguous methods should be resolved
Reviewed-by: jjg, vromero
2013-06-06 15:33:40 +01:00
Maurizio Cimadamore
5d6029baac
8015505: Spurious inference error when return type of generic method requires unchecked conversion to target
...
Use check context compatibility during 15.12.2.8 check (only when JDK 8 inference is enabled)
Reviewed-by: jjg
2013-06-04 11:34:31 +01:00
Jonathan Gibbons
155bd74411
8012728: Normalize @ignore comments on langtools tests
...
Reviewed-by: vromero, mcimadamore
2013-05-03 09:56:56 -07:00
Maurizio Cimadamore
a4e10d2aad
8009459: Wrong behavior of diamond finder with source level 7
...
Diamond finder doesn't take into account different inference behaviors
Reviewed-by: jjg
2013-03-06 15:33:17 +00:00
Maurizio Cimadamore
1ec5dfafe0
8007464: Add graph inference support
...
Add support for more aggressive type-inference scheme
Reviewed-by: jjg
2013-02-12 19:25:09 +00:00
Maurizio Cimadamore
0336a57511
8007463: Cleanup inference related classes
...
Make Infer.InferenceContext an inner class; adjust bound replacement logic in Type.UndetVar
Reviewed-by: jjg
2013-02-06 14:03:39 +00:00
Maurizio Cimadamore
5b1a78dc92
8006694: temporarily workaround combo tests are causing time out in several platforms
...
Reviewed-by: jjg
2013-01-23 20:57:40 +00:00
Maurizio Cimadamore
eb646f3c09
8006692: jdk/test/java/util/Collections/BigBinarySearch.java fails to compile
...
Missing boxing cause spurious inference failure
Reviewed-by: jjg
2013-01-23 15:08:03 +00:00
Maurizio Cimadamore
442154dcf9
8005244: Implement overload resolution as per latest spec EDR
...
Add support for stuck expressions and provisional applicability
Reviewed-by: jjg
2013-01-21 20:13:56 +00:00
Vicente Romero
9d4f6a0ebe
8005167: execution time of combo tests in javac should be improved
...
Reviewed-by: jjg, jjh
2013-01-08 13:47:57 +00:00
Maurizio Cimadamore
5c0bff8f21
8004094: Javac compiler error - synthetic method accessor generated with duplicate name
...
Method clash check logic should skip methods marked with ACC_SYNTHETIC
Reviewed-by: jjg
2012-12-10 12:10:50 +00:00
Maurizio Cimadamore
a494f0ab86
8003280: Add lambda tests
...
Turn on lambda expression, method reference and default method support
Reviewed-by: jjg
2012-11-17 19:01:03 +00:00
Maurizio Cimadamore
7c849a94da
8000931: Cleanup Resolve.java
...
Unify all method resolution routines
Reviewed-by: jjg
2012-11-04 11:01:49 +00:00
Maurizio Cimadamore
d4be9a13c8
7192246: Add type-checking support for default methods
...
Add type-checking support for default methods as per Featherweight-Defender document
Reviewed-by: jjg, dlsmith
2012-11-04 10:59:42 +00:00
Maurizio Cimadamore
319150fde0
7177386: Add attribution support for method references
...
Add type-checking/lookup routines for method references
Reviewed-by: jjg, dlsmith
2012-10-06 10:35:38 +01:00
Maurizio Cimadamore
5f629e503c
7188968: New instance creation expression using diamond is checked twice
...
Unify method and constructor check logic
Reviewed-by: jjg
2012-09-26 14:22:41 +01:00
Maurizio Cimadamore
f49f25c60d
7177306: Regression: unchecked method call does not erase return type
...
Spurious extra call to Attr.checkMethod when method call is unchecked
Reviewed-by: jjg, dlsmith
2012-09-25 11:56:46 +01:00
Maurizio Cimadamore
d4c5fca16a
7175433: Inference cleanup: add helper class to handle inference variables
...
Add class to handle inference variables instantiation and associated info
Reviewed-by: jjg, dlsmith
2012-09-25 11:55:34 +01:00
Steve Sides
12a8d12863
7191449: update copyright year to match last edit in jdk8 langtools repository
...
Reviewed-by: jjh
2012-08-15 13:48:46 -07:00
Maurizio Cimadamore
b03ad3ae09
7175911: Simplify error reporting API in Check.CheckContext interface
...
Make error messages generated during Check.checkType more uniform and more scalable
Reviewed-by: jjg, dlsmith
2012-08-02 18:22:41 +01:00
Maurizio Cimadamore
7e32f8e585
7166552: Inference: cleanup usage of Type.ForAll
...
Remove hack to callback into type-inference from assignment context
Reviewed-by: dlsmith, jjg
2012-05-31 17:42:14 +01:00
Sue Wei
3d77d813ce
7157798: Add 6 test scenarios for testing inheritance of multiple same-name methods from mulitple interfaces
...
Reviewed-by: mcimadamore
2012-05-21 16:10:14 -07:00
Maurizio Cimadamore
d951098c65
7154127: Inference cleanup: remove bound check analysis from visitors in Types.java
...
Remove bound checking rules from recursive subtype visitors in Types.java and replace with centralized bound-checking logic
Reviewed-by: jjg, dlsmith
2012-04-11 10:50:11 +01:00
Maurizio Cimadamore
9b1e54dae3
7151492: Encapsulate check logic into Attr.ResultInfo
...
ResultInfo class should be used to make attribution code transparent w.r.t. check logic being used
Reviewed-by: jjg, dlsmith
2012-03-26 15:28:22 +01:00
Maurizio Cimadamore
f6ee974ac7
7151802: compiler update caused sqe test failed
...
Fix regression caused by 7144506
Reviewed-by: jjg, dlsmith
2012-03-09 17:10:56 +00:00
Maurizio Cimadamore
271ed603e1
7148556: Implementing a generic interface causes a public clone() to become inaccessible
...
Implementation of Resolve.isOverriddenIn() should distinguish between classes/interfaces
Reviewed-by: jjg
2012-03-06 16:50:32 +00:00
Maurizio Cimadamore
6acf436edc
7151070: NullPointerException in Resolve.isAccessible
...
Spurious accessibility check in TransTypes
Reviewed-by: jjg
2012-03-06 16:48:29 +00:00
Maurizio Cimadamore
d5036d16cd
7144506: Attr.checkMethod should be called after inference variables have been fixed
...
Unify post-inference sanity check with Attr.checkMethod
Reviewed-by: jjg, dlsmith
2012-03-06 13:28:05 +00:00
Maurizio Cimadamore
b10e766b73
7148242: Regression: valid code rejected during generic type well-formedness check
...
Redundant type-var substitution makes generic-type well-formedness check to fail
Reviewed-by: jjg
2012-03-02 12:57:47 +00:00
Jonathan Gibbons
42b9d6bc2e
7124605: typos in javac comments
...
Reviewed-by: ksrini
2011-12-23 22:30:33 +00:00
Maurizio Cimadamore
4ac518143c
7115050: Add parser support for lambda expressions
...
Add support for parsing lambda expressions to JavacParser
Reviewed-by: jjg
2011-11-28 15:56:42 +00:00
Maurizio Cimadamore
bd420dc94e
7086586: Inference producing null type argument
...
Inference should fail in 15.12.2.7 when inference variables with 'nulltype' upper bounds are found
Reviewed-by: dlsmith
2011-09-16 14:16:11 +01:00
Maurizio Cimadamore
08619c2e9c
7086601: Error message bug: cause for method mismatch is 'null'
...
Inference error during lub() does not set 'cause' for method resolution diagnostic
Reviewed-by: jjg
2011-09-13 14:15:39 +01:00
Maurizio Cimadamore
8db2f8de59
7086595: Error message bug: name of initializer is 'null'
...
Implementation of MethodSymbol.location() should take into account static/instance initializers
Reviewed-by: jjg
2011-09-13 14:14:57 +01:00
Maurizio Cimadamore
5c209a7d2d
7057297: Project Coin: diamond erroneously accepts in array initializer expressions
...
Diamond in array initializer expressions should be rejected
Reviewed-by: jjg
2011-07-27 19:01:33 +01:00
Maurizio Cimadamore
02802c9449
7046778: Project Coin: problem with diamond and member inner classes
...
Diamond inference generates spurious error messages when target type is a member inner class
Reviewed-by: jjg
2011-07-27 19:01:08 +01:00
Maurizio Cimadamore
af30a2dbf3
7062745: Regression: difference in overload resolution when two methods are maximally specific
...
Fix most specific when two methods are maximally specific and only one has non-raw return type
Reviewed-by: jjg, dlsmith
2011-07-27 19:00:53 +01:00
Maurizio Cimadamore
fbecf91f80
7040883: Compilation error: "length in Array is defined in an inaccessible class or interface"
...
Fix of 7034511 (now backed out) is causing spurious accessibility errors
Reviewed-by: jjg
2011-05-02 12:05:41 +01:00
Maurizio Cimadamore
fcbd7a77c4
7039931: Project Coin: diamond inference fail with generic constructor explicit type-arguments
...
Diamond should be disallowed in cases where explicit generic constructor parameters are specified
Reviewed-by: jjg
2011-04-30 11:57:46 +01:00
Maurizio Cimadamore
7fb85c5cef
7034495: Javac asserts on usage of wildcards in bounds
...
Problem with intersection types and wildcards causing javac to crash
Reviewed-by: jjg
2011-04-29 16:05:56 +01:00
Maurizio Cimadamore
02daeca60e
7034019: ClassCastException in javac with conjunction types
...
Resolve.mostSpecific doesn't handle case of raw override
Reviewed-by: dlsmith
2011-04-12 20:58:06 -07:00
Maurizio Cimadamore
c46387423a
7034511: Loophole in typesafety
...
Type-variable substutution takes upper bound of replaced captured type-variable
Reviewed-by: dlsmith
2011-04-12 20:56:16 -07:00
Maurizio Cimadamore
bd9526ecbe
7030150: Type inference for generic instance creation failed for formal type parameter
...
Problem when explicit generic constructor type-arguments are used in conjunction with diamond
Reviewed-by: jjg
2011-03-29 16:40:51 +01:00
Maurizio Cimadamore
0a0b5a7a8a
7030687: Diamond: compiler accepts erroneous code where diamond is used with non-generic inner class
...
Diamond accepts non-parameterized member inner classes with parameterized outer because of a bad check
Reviewed-by: jjg
2011-03-29 16:40:07 +01:00
Maurizio Cimadamore
409b9b8d25
7020044: Project Coin: diamond erroneous allowed on some anonymous inner classes
...
Disallow diamond on anonymous innner class creation expression (as per JSR 334's EDR)
Reviewed-by: jjg
2011-03-07 14:31:50 +00:00