Robert Field
46e9ef69a7
8010010: NPE generating serializedLambdaName for nested lambda
...
Reviewed-by: mcimadamore
2013-03-14 22:54:17 -07:00
Maurizio Cimadamore
22e2c128a2
8009545: Graph inference: dependencies between inference variables should be set during incorporation
...
Move all transitivity checks into the incorporation round
Reviewed-by: jjg
2013-03-12 16:02:43 +00:00
Maurizio Cimadamore
69ee819808
8008540: Constructor reference to non-reifiable array should be rejected
...
8008539: Spurious error when constructor reference mention an interface type
8008538: Constructor reference accepts wildcard parameterized types
Overhaul of Check.checkConstructorRefType
Reviewed-by: jjg
2013-03-12 16:02:13 +00:00
Robert Field
41447ec765
8009742: Bad lambda name for lambda in a static initializer or ctor
...
Reviewed-by: mcimadamore
2013-03-11 10:02:55 -07:00
Robert Field
867e1720c2
8009582: Method reference generic constructor gives: IllegalArgumentException: Invalid lambda deserialization
...
Reviewed-by: mcimadamore
2013-03-07 08:26:13 -08:00
Maurizio Cimadamore
c9bae7b335
8009299: Javac crashes when compiling method reference to static interface method
...
Assertion in Check.checMethod is too strict
Reviewed-by: jjg
2013-03-06 15:29:30 +00:00
Maurizio Cimadamore
e788a0e536
8009129: Illegal access error when calling method reference
...
Javac generates method handle referencing non public type
Reviewed-by: jjg, rfield
2013-03-05 14:19:49 +00:00
Maurizio Cimadamore
7a28d6291d
8009154: Missing cast in method reference bridge leads to NoSuchMethodError
...
Missing cast in generated method reference bridge
Reviewed-by: rfield, jjg
2013-03-05 14:16:07 +00:00
Maurizio Cimadamore
3cbe22f256
8009227: Certain diagnostics should not be deferred
...
Add new diagnostic flag to mark non deferrable diagnostics
Reviewed-by: jjg
2013-03-05 14:12:07 +00:00
Maurizio Cimadamore
d0a0df54ed
8004962: Code generation crash with lambda and local classes
...
Translation info should be propagated from LambdaToMethod to Lower
Reviewed-by: jjg, rfield
2013-03-05 14:04:57 +00:00
Maurizio Cimadamore
f932d844c1
8008537: Missing method reference lookup error when unbound search finds a static method
...
Static-ness check should be applied after member reference resolution
Reviewed-by: jjg
2013-02-28 14:05:52 +00:00
Maurizio Cimadamore
85067f7869
8008813: Structural most specific fails when method reference is passed to overloaded method
...
Bad logic for checking most specific method reference type
Reviewed-by: jjg
2013-02-28 14:05:44 +00:00
Maurizio Cimadamore
9c01455eb6
8008723: Graph Inference: bad graph calculation leads to assertion error
...
Dependencies are not propagated correctly through merged nodes during inference graph initialization
Reviewed-by: jjg
2013-02-28 14:00:52 +00:00
Maurizio Cimadamore
7776fdebe7
8008708: Regression: separate compilation causes crash in wildcards inference logic
...
Invalid use of WildcardType.bound in Types.removeWildcards
Reviewed-by: jjg
2013-02-22 18:19:51 +00:00
Sonali Goel
96495bc664
8008337: Write test to check for compiler error when static method in interface is called via super()
...
Reviewed-by: mcimadamore
2013-02-22 13:31:35 +00:00
Robert Field
bcaa703a49
8008405: Now that metafactory is in place, add javac lambda serialization tests
...
Tests part of original langtools serialization review.
Reviewed-by: mcimadamore
2013-02-21 14:43:51 -08:00
Maurizio Cimadamore
73b1aee3f4
8008444: Inherited generic functional descriptors are merged incorrectly
...
Missing call to Types.createMethodWithThrownTypes
Reviewed-by: jjg
2013-02-21 15:27:05 +00:00
Maurizio Cimadamore
8c1621ee38
8008293: Declared bounds not considered when functional interface containing unbound wildcards is instantiated
...
Wildcards inference should re-use some of the bounds info generated during capture conversion
Reviewed-by: jjg
2013-02-21 15:25:03 +00:00
Maurizio Cimadamore
5bbf5f39fc
8005183: Missing accessor for constructor reference pointing to private inner class ctor
...
Compiler should add bridges when translating private constructor reference
Reviewed-by: jjg
2013-02-21 15:23:48 +00:00
Maurizio Cimadamore
937b7d2fba
8008276: assertion error in com.sun.tools.javac.comp.TransTypes.visitApply
...
DiagnosticFilter used during speculative attribution is too broad
Reviewed-by: jjg
2013-02-21 15:21:38 +00:00
Maurizio Cimadamore
eb68b33185
8008227: Mixing lambdas with anonymous classes leads to NPE thrown by compiler
...
Disentangle cyclic dependency between static-ness of synthetic lambda method and static-ness of classes nested within lambdas
Reviewed-by: jjg
2013-02-21 15:19:29 +00:00
Robert Field
b2a3c762ff
8004969: Generate $deserializeLambda$ method
...
8006763: super in method reference used in anonymous class - ClassFormatError is produced
8005632: Inner classes within lambdas cause build failures
8005653: Lambdas containing inner classes referencing external type variables do not correctly parameterize the inner classes
Reviewed-by: mcimadamore
2013-02-15 18:40:38 -08:00
Maurizio Cimadamore
fd17a4290b
8008309: TargetType60 fails because of bad golden file
...
Bad golden file
Reviewed-by: jjg
2013-02-15 18:13:00 +00:00
Sonali Goel
30058417e1
8007427: Annotation element as '_' gives compiler error instead of a warning
...
8007401: Write test to check for generation of warnings when '_' is used as an identifier
Extended identifier production not used in annotation values
Reviewed-by: jjg
2013-02-15 16:31:19 +00:00
Maurizio Cimadamore
f5df2a2562
8007535: Compiler crashes on @FunctionalInterface used on interface with two inherited methods with same signatures
...
Bad check in Types.interfaceCandidates
Reviewed-by: jjg
2013-02-15 16:30:31 +00:00
Maurizio Cimadamore
b496912ee1
8007462: Fix provisional applicability for method references
...
Add speculative arity-based check to rule out potential candidates when stuck reference is passed to method
Reviewed-by: jjg
2013-02-15 16:29:58 +00:00
Maurizio Cimadamore
e88e06a5e0
8007285: AbstractMethodError instead of compile-time error when method reference with super and abstract
...
Missing abstractness check on super rmethod references
Reviewed-by: jjg
2013-02-15 16:28:57 +00:00
Maurizio Cimadamore
f8f9896cc7
8006749: compiler does not allow Object protected methods to be used in lambda
...
Check.checkFunctionalInterface should take into account 'fake' override
Reviewed-by: jjg
2013-02-15 16:28:07 +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
Jim Holmlund
8985a7c2ac
8007504: Remove @ignore from tests that no longer need it
...
Reviewed-by: mcimadamore
2013-02-05 18:55:13 +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
1f8b2abf80
8006684: Compiler produces java.lang.VerifyError: Bad type on operand stack
...
Lambda desugaring generates spurious references to 'this' in static contexts
Reviewed-by: jjg
2013-01-22 16:39:51 +00:00
Maurizio Cimadamore
948888218b
8006673: TargetType52 fails because of bad golden file
...
Fix golden file in negative test
Reviewed-by: jjg
2013-01-22 16:23:35 +00:00
Maurizio Cimadamore
422c8bd914
8006566: Remove transient lambda-related guards from JavacParser
...
Remove transitional internal flag for allowing intersection types in cast
Reviewed-by: jjg
2013-01-21 20:14:39 +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
Maurizio Cimadamore
00ae27b2cf
8006561: Langtools test failure: missing diags/examples
...
Forgot to hg add tests
Reviewed-by: jjg
2013-01-18 15:38:14 +00:00
Maurizio Cimadamore
0a95b1d28c
8005852: Treatment of '_' as identifier
...
Warn when '_' is found in an identifier position
Reviewed-by: jjg
2013-01-17 18:15:20 +00:00
Maurizio Cimadamore
3b3feb3853
8005299: Add FunctionalInterface checking to javac
...
Javac should check that types annotated with @FunctionalInterface are indeed functional interfaces
Reviewed-by: jjg
2013-01-16 16:30:11 +00:00
Maurizio Cimadamore
d19bc80ca1
8005854: Add support for array constructor references
...
Support constructor references of the kind int[]::new
Reviewed-by: jjg
2013-01-16 16:27:01 +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
c932023b04
8005179: Cleanup Resolve.AmbiguityError
...
Linearize nested ambiguity errors
Reviewed-by: jjg
2013-01-08 10:16:26 +01:00
Lana Steuck
f2c7a7867a
Merge
2012-12-28 18:39:09 -08:00
David Katleman
8208c844dd
8004982: JDK8 source with GPL header errors
...
Reviewed-by: ohair
2012-12-20 16:24:18 -08:00
Maurizio Cimadamore
2296453268
8005193: New regression test test/tools/javac/lambda/BadMethodCall2.java fails
...
Bad golden file in negative test
Reviewed-by: jjh
2012-12-18 22:16:45 +00:00
Maurizio Cimadamore
08823b6103
8004099: Bad compiler diagnostic generated when poly expression is passed to non-existent method
...
Some code paths in resolve do not use methodArguments to correctly format actuals
Reviewed-by: jjg
2012-12-17 16:13:01 +00:00
Vicente Romero
c1804d6409
8000518: Javac generates duplicate name_and_type constant pool entry for class BinaryOpValueExp.java
...
Reviewed-by: jjg, mcimadamore
2012-12-15 13:54:51 +00:00
Maurizio Cimadamore
d7884e5ae2
8002099: Add support for intersection types in cast expression
...
Add parser and type-checking support for intersection types in cast expressions
Reviewed-by: jjg
2012-11-30 15:14:48 +00:00
Maurizio Cimadamore
c76c08e82a
8004101: Add checks for method reference well-formedness
...
Bring method reference type-checking in sync with latest EDR
Reviewed-by: jjg
2012-11-30 15:14:36 +00:00
Maurizio Cimadamore
0db60b7bb2
8004102: Add support for generic functional descriptors
...
Method references are allowed to have a generic functional interface descriptor target
Reviewed-by: jjg
2012-11-30 15:14:25 +00:00
Maurizio Cimadamore
684271da34
8004105: Expression statement lambdas should be void-compatible
...
Fix lambda compatibility rules as per latest EDR
Reviewed-by: jjg
2012-11-30 15:14:12 +00:00