102 Commits

Author SHA1 Message Date
Eric McCorkle
ad8c918fb1 8019461: Clean up javac diagnostics
7196553: Review error messages for repeating annotations

Changes to the diagnostic messages to improve clarity and JLS coherence

Reviewed-by: jjg
2013-10-10 13:55:41 -04:00
Jan Lahoda
5ec0ba7c47 8025087: Annotation processing api returns default modifier for interface static method
ClassReader must not set Flags.DEFAULT for interface static methods

Reviewed-by: vromero, jjg
2013-10-09 13:09:31 +02:00
Vicente Romero
696179bbda 8023679: Improve error message for '_' used as a lambda parameter name
Reviewed-by: jjg, dlsmith
2013-10-02 17:04:51 +01:00
Maurizio Cimadamore
4cc7a55aab 8023549: Compiler emitting spurious errors when constructor reference type is inferred and explicit type arguments are supplied
Reviewed-by: jjg, vromero
2013-09-04 00:01:05 +01:00
Maurizio Cimadamore
0382c78ff1 8016177: structural most specific and stuckness
Reviewed-by: jjg, vromero
2013-09-02 22:38:36 +01:00
Jonathan Gibbons
3dd18b5d8c 8024093: Two *.rej files checked in to langtools/test directory
Reviewed-by: mchung
2013-08-30 15:14:51 -07:00
Joe Darcy
557cb9c6b1 8011043: Warn about use of 1.5 and earlier source and target values
Reviewed-by: jjg
2013-08-20 12:15:19 -07:00
Jan Lahoda
59e0637339 8015809: More user friendly compile-time errors for uncaught exceptions in lambda expression
Producing individual errors for uncaught undeclared exceptions inside lambda expressions, rather than one error for the whole lambda

Reviewed-by: mcimadamore
2013-08-15 22:33:43 +02:00
Maurizio Cimadamore
4e85a5ae43 6537020: JCK tests: a compile-time error should be given in case of ambiguously imported fields (types, methods)
Hiding check does not support interface multiple inheritance

Reviewed-by: jjg
2013-08-12 17:25:07 +01:00
Vicente Romero
5540c7cbe1 8013179: assertion failure in javac when compiling with -source 1.6 -target 1.6
Reviewed-by: jjg
2013-07-31 10:52:01 +01:00
Maurizio Cimadamore
da6bbaf42b 8020843: javac crashes on accessibility check with method reference with typevar receiver
Method reference overload check doesn't walk through type-variable receivers

Reviewed-by: jjg
2013-07-25 14:51:40 +01:00
Kumar Srinivasan
c6c6fe7b5e 8017216: javac doesn't fill in end position for some errors of type not found
8019421: Javac doesn't fill in end position for some annotation related errors
8019422: Javac doesn't fill in end position for uninitialized variable errors

Reviewed-by: jjg, mcimadamore
2013-07-19 07:22:53 -07:00
Maurizio Cimadamore
80407ef47d 8013576: Add stat support to LambdaToMethod
LambdaToMethod should emit info to help diagnose/test lambda metafactory problems

Reviewed-by: jjg, vromero
2013-06-10 15:57:32 +01:00
Maurizio Cimadamore
ec458693f7 8012003: Method diagnostics resolution need to be simplified in some cases
Unfold method resolution diagnostics when they mention errors in poly expressions

Reviewed-by: jjg, vromero
2013-05-15 14:00:31 +01:00
Werner Dietl
54582cab82 8013852: update reference impl for type-annotations
Co-authored-by: Steve Sides <steve.sides@oracle.com>
Co-authored-by: Joel Borggren-Franck <joel.franck@oracle.com>
Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Reviewed-by: jjg
2013-05-14 15:04:06 -07:00
Maurizio Cimadamore
da9dd76b20 8010822: Intersection type cast for functional expressions does not follow spec EDR
Remove support for marker interfaces; redefine intersection type casts to be order-independent

Reviewed-by: jjg
2013-04-08 15:59:29 +01:00
Maurizio Cimadamore
ea55015155 8009131: Overload: javac should discard methods that lead to errors in lambdas with implicit parameter types
Lambdas that have errors in their bodies should make enclosing overload resolution fail

Reviewed-by: jjg
2013-04-08 15:57:10 +01: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
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
Lana Steuck
3c22954800 Merge 2013-02-21 17:49:56 -08:00
David Holmes
e57875e8ab Merge 2013-02-17 16:44:55 -05: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
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
David Holmes
581f36e1cc Merge 2013-02-04 18:08:53 -05:00
Michael Ernst
659a96edf9 8006775: JSR 308: Compiler changes in JDK8
Co-authored-by: Werner Dietl <wmdietl@cs.washington.edu>
Co-authored-by: Matt Papi <mpapi@csail.mit.edu>
Co-authored-by: Mahmood Ali <mahmood@notnoop.com>
Reviewed-by: jjg
2013-01-23 13:27:24 -08:00
Maurizio Cimadamore
3054ea5580 8005166: Add support for static interface methods
Support public static interface methods

Reviewed-by: jjg
2013-01-21 20:19:53 +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
Jonathan Gibbons
caf667de05 8004182: Add support for profiles in javac
Reviewed-by: mcimadamore
2013-01-21 01:27:42 -05: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
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
Jonathan Gibbons
a2f594bf74 8006119: update javac to follow latest spec for repeatable annotations
Reviewed-by: darcy
2013-01-14 13:50:01 -08: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
Jonathan Gibbons
4a3e904c6e 8004832: Add new doclint package
Reviewed-by: mcimadamore
2012-12-17 07:47:05 -08:00
Joel Borggrén-Franck
e4c3d2d727 8001114: Container annotation is not checked for semantic correctness
Reviewed-by: jjg
2012-12-03 11:16:32 +01: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
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
Jonathan Gibbons
c78e1cbfac 7021614: extend com.sun.source API to support parsing javadoc comments
Reviewed-by: ksrini, strarup
2012-11-14 17:23:10 -08:00
Vicente Romero
59347fd9bb 8000484: Bad error recovery when 'catch' without 'try' is found
Reviewed-by: jjg, mcimadamore
2012-11-05 16:26:09 +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
Fredrik Öhrström
07880728ed 7153951: Add new lint option -Xlint:auxiliaryclass
Reviewed-by: jjg, mcimadamore, forax
2012-11-01 10:48:36 +01:00
Maurizio Cimadamore
848ec301f2 7192245: Add parser support for default methods
Add support for 'default' keyword in modifier position

Reviewed-by: jjg
2012-10-17 16:43:26 +01: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
72f39bf20c 7177385: Add attribution support for lambda expressions
Add support for function descriptor lookup, functional interface inference and lambda expression type-checking

Reviewed-by: jjg, dlsmith
2012-10-05 14:35:24 +01:00
Maurizio Cimadamore
c0e2ed86c1 7177387: Add target-typing support in method context
Add support for deferred types and speculative attribution

Reviewed-by: jjg, dlsmith
2012-10-04 13:04:53 +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