60 Commits

Author SHA1 Message Date
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
Joel Borggrén-Franck
9c23b8bad0 7151010: Add compiler support for repeating annotations
Reviewed-by: jjg, mcimadamore
2012-08-31 10:37:46 +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
a39622326e 7175538: Integrate efectively final check with DA/DU analysis
Allow generalized effectively-final analysis for all local variables

Reviewed-by: jjg, dlsmith
2012-08-02 18:23:21 +01: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
Jan Lahoda
9feb7f3e15 7159445: (javac) emits inaccurate diagnostics for enhanced for-loops
Reviewed-by: jjg
2012-05-10 12:32:58 -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
Jan Lahoda
0f0e273e0d 7156633: (javac) incorrect errors when parsing variable declaration in block statements
Reviewed-by: jjg
2012-04-09 14:31:18 -07: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
d353146b32 7129801: Merge the two method applicability routines
Resolve.java and Infer.java should reuse the same method applicability check routine

Reviewed-by: dlsmith, jjg
2012-01-24 17:52:02 +00:00
Jonathan Gibbons
a3f0f7b59c 4881269: improve diagnostic for ill-formed tokens
Reviewed-by: mcimadamore
2012-01-03 11:37:00 -08:00
Jonathan Gibbons
ea7f040a8e 7120736: refactor javac option handling
Reviewed-by: mcimadamore
2011-12-13 11:21:28 -08:00
Maurizio Cimadamore
b0a9998899 7115052: Add parser support for method references
Add support for parsing method references to JavacParser

Reviewed-by: jjg
2011-11-28 16:05:46 +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
7873cba6b2 7098660: Write better overload resolution/inference tests
Add overload/inference debug diagnostics - added test harness using annotations to check outcome of overload resolution/inference

Reviewed-by: jjg
2011-10-24 13:00:30 +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
Jan Lahoda
6f70d425f2 7073631: (javac) javac parser improvements for error position reporting
JavacParser improvements for NetBeans, improved by LangTools.

Reviewed-by: mcimadamore, jjg
2011-09-01 09:14:25 -07: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
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
e7081dbf6a 7039937: Improved catch analysis fails to handle a common idiom in the libraries
Disable generation of 'unreachable catch' warnings for catch statements catching Exception/Throwable

Reviewed-by: jjg
2011-04-29 16:05:29 +01:00
Maurizio Cimadamore
acf788aa1f 7027157: Project Coin: javac warnings for AutoCloseable.close throwing InterruptedException
Javac should warn about use/declaration of AutoCloseable subclasses that can throw InterruptedException

Reviewed-by: jjg
2011-03-29 16:41:18 +01:00
Maurizio Cimadamore
bc3a1c60ef 7030606: Project-coin: multi-catch types should be pairwise disjoint
Bring javac in sync with latest Project Coin EDR

Reviewed-by: jjg
2011-03-29 16:40:31 +01:00
Maurizio Cimadamore
eb4e1b86cd 6558548: The compiler needs to be aligned with clarified specification of throws
Javac should issue unconditional warnings when 'dead' catch clauses are detected

Reviewed-by: jjg
2011-03-16 11:12:26 +00:00
Jonathan Gibbons
593927cf2d 7010608: the string 'error' should appear in error messages
Reviewed-by: mcimadamore
2011-03-14 11:42:15 -07: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
Maurizio Cimadamore
0f41147166 7020626: diamond: add diagnostic test for diamond and non-generic classes
Fix failure in regression test CheckExamples

Reviewed-by: jjg
2011-02-18 16:17:44 +00:00
Maurizio Cimadamore
dd20e6fdd7 7017104: improve error reporting for uncaught/undeclared exceptions from try-with-resources
Twr should generate better error message when uncaught exceptions are thrown by implicit call of close() method

Reviewed-by: jjg
2011-02-15 11:51:04 +00:00
Maurizio Cimadamore
dfec6e2301 7007615: java_util/generics/phase2/NameClashTest02 fails since jdk7/pit/b123
Override clash algorithm is not implemented correctly

Reviewed-by: jjg
2011-02-07 18:10:13 +00:00
Joe Darcy
ba98ee427f 7014734: Project Coin: Allow optional trailing semicolon to terminate resources list in try-with-resources
Reviewed-by: jjg
2011-01-31 19:06:32 -08:00
Maurizio Cimadamore
1e776bc78a 6313164: javac generates code that fails byte code verification for the varargs feature
Method applicability check should fail if formal varargs element type is not accessible

Reviewed-by: jjg
2011-01-28 12:03:49 +00:00
Joe Darcy
ec50779b72 7013420: Project Coin: remove general expression support from try-with-resources statement
Reviewed-by: mcimadamore, jjg
2011-01-25 17:02:56 -08:00
Maurizio Cimadamore
96d0749bfc 6569633: Varargs: parser error when varargs element type is an array
Explicit error message when old-style array syntax is mixed with varargs

Reviewed-by: jjg
2011-01-24 15:45:24 +00:00
Maurizio Cimadamore
b77effad6c 6968793: issues with diagnostics
Several diagnostic improvements

Reviewed-by: jjg
2011-01-24 15:44:51 +00:00
Maurizio Cimadamore
7d90979693 6992698: JSR 292: remove support for transient syntax in polymorphic signature calls
Special syntax to denote indy return type through type parameters should be removed (and cast shall be used instead)

Reviewed-by: jjg, jrose
2011-01-14 09:45:04 +00:00
Maurizio Cimadamore
21c037bb9b 7010194: several langtools regression failures after JSR 292 changes (b123)
Some regression tests rely on unsupported JSR 292 features

Reviewed-by: jjg
2011-01-05 09:59:01 +00:00
Kelly O'Hair
84b5875f26 6962318: Update copyright year
Reviewed-by: xdono
2010-12-28 15:54:52 -08:00
Maurizio Cimadamore
6ef5228632 6993978: Project Coin: Compiler support of annotation to reduce varargs warnings
Reviewed-by: jjg, darcy
2010-12-13 15:11:00 -08:00
Jonathan Gibbons
be8a607fef 6900037: javac should warn if earlier -source is used and bootclasspath not set
Reviewed-by: darcy
2010-11-29 14:15:36 -08:00
Jonathan Gibbons
bdc7e81168 6999438: remove support for exotic identifiers from JDK 7
Reviewed-by: mcimadamore
2010-11-18 16:13:11 -08:00
Maurizio Cimadamore
64789c2491 6970016: Clean up ARM/try-with-resources implementation
Changed Xlint option name from -Xlint:arm to -Xlint:try

Reviewed-by: jjg
2010-11-12 12:34:18 +00:00
Maurizio Cimadamore
d4d5f60edc 6993963: Project Coin: Use precise exception analysis for effectively final catch parameters
More precise rethrow analysis should be extended to effectively-final exception parameters. Multicatch parameters should be made implicitly final.

Reviewed-by: jjg, darcy
2010-11-04 12:57:48 +00:00