Commit Graph

383 Commits

Author SHA1 Message Date
Maurizio Cimadamore
b77effad6c 6968793: issues with diagnostics
Several diagnostic improvements

Reviewed-by: jjg
2011-01-24 15:44:51 +00:00
Maurizio Cimadamore
df54c56a04 6943278: spurious error message for inference and type-variable with erroneous bound
Type-inference should ignore erroneous bounds

Reviewed-by: jjg
2011-01-24 15:44:15 +00:00
Jonathan Gibbons
9a6afb10e4 6419926: JSR 199: FileObject.toUri() generates URI without schema (Solaris)
Reviewed-by: mcimadamore
2011-01-14 11:45:19 -08:00
Maurizio Cimadamore
0dae258b02 6949040: java.dyn package must be compiled with -target 7 or better
Issue error (rather than warning) when @PolymorphicSignature is found and target < 7

Reviewed-by: jjg
2011-01-14 09:46:44 +00:00
Maurizio Cimadamore
ede9924b4e 7007432: Test generic types well-formedness
Add a new kind of check (well-formedness of generic type w.r.t. declared bounds) in the type-harness

Reviewed-by: jjg
2011-01-14 09:45:52 +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
Jonathan Gibbons
e66871ae10 6430241: Hard to disable symbol file feature through API
Reviewed-by: mcimadamore
2011-01-13 11:48:10 -08:00
Jonathan Gibbons
12f8b2493e 6993305: starting position of a method without modifiers and with type parameters is incorrect
Reviewed-by: mcimadamore
2011-01-11 08:05:28 -08:00
Jonathan Gibbons
43e78a8d44 6992999: fully remove JSR 308 from langtools
Reviewed-by: mcimadamore
2011-01-10 14:57:59 -08: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
Lana Steuck
34c5f24321 Merge 2011-01-04 17:10:35 -08:00
Kelly O'Hair
84b5875f26 6962318: Update copyright year
Reviewed-by: xdono
2010-12-28 15:54:52 -08:00
Jim Holmlund
4157467833 6982992: Tests CheckAttributedTree.java, JavacTreeScannerTest.java, and SourceTreeeScannerTest.java timeout
Hoist some invariant code out of a loop

Reviewed-by: ksrini
2010-12-23 12:29:21 -08:00
Kumar Srinivasan
5032fcd7b5 6567415: Neverending loop in ClassReader
Reviewed-by: jjg
2010-12-18 09:38:39 -08:00
Jonathan Gibbons
facb1c1b6d 7006564: NPE in javac running test/tools/javac/nio/compileTest/CompileTest.java
Reviewed-by: mcimadamore, alanb
2010-12-15 06:39:51 -08:00
Jonathan Gibbons
cfe2f7eb5d 6999891: DefaultFileManager incorrect
Reviewed-by: darcy
2010-12-14 14:17:20 -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
Maurizio Cimadamore
ecb30ce139 7006109: Add test library to simplify the task of writing automated type-system tests
Types.java needs to be more stress-tested

Reviewed-by: jjg
2010-12-13 14:56:50 +00:00
Jonathan Gibbons
1ce40f31dd 6504896: TreeMaker.Literal(Object) does not support Booleans
Reviewed-by: mcimadamore
2010-12-10 07:38:28 -08:00
Maurizio Cimadamore
450d85b95a 6199075: Unambiguous varargs method calls flagged as ambiguous
Javac does not implement overload resolution w.r.t. varargs methods as described in the JLS

Reviewed-by: jjg
2010-12-10 15:24:17 +00:00
Maurizio Cimadamore
ba8f15cef1 7005671: Regression: compiler accepts invalid cast from X[] to primitive array
Regression in type conversion after 292 changes

Reviewed-by: jjg
2010-12-10 15:23:42 +00:00
Jonathan Gibbons
cc42fec255 6985202: no access to doc comments from Tree API
Reviewed-by: mcimadamore
2010-12-09 08:48:08 -08:00
Jonathan Gibbons
3244279bb2 4917091: javac rejects array over 128 in length
Reviewed-by: mcimadamore
2010-12-09 08:24:42 -08:00
Maurizio Cimadamore
d2e437cb96 7005371: Multicatch: assertion error while generating LocalVariableTypeTable attribute
Compiler crashes with assertion error if '-g' option is passed and source contains multicatch

Reviewed-by: jjg
2010-12-09 15:50:57 +00:00
Maurizio Cimadamore
929d3fd3f5 6476118: compiler bug causes runtime ClassCastException for generics overloading
Compiler allows bridge methods to override unrelated method

Reviewed-by: jjg
2010-12-09 15:50:34 +00:00
Maurizio Cimadamore
e8d1ae243d 7005095: Cast: compile reject sensible cast from final class to interface
A previous fix to cast conversion has made the compiler too strict w.r.t. final cast

Reviewed-by: jjg
2010-12-09 15:50:10 +00:00
Jonathan Gibbons
8e9c506c6c 6999210: javac should be able to warn of anomalous conditions in classfiles
Reviewed-by: mcimadamore, darcy
2010-12-07 14:13:25 -08:00
Maurizio Cimadamore
5cdc149cc1 5088429: varargs overloading problem
Compiler implementation for overload resolution w/ varargs method does not match JLS

Reviewed-by: jjg
2010-12-06 11:51:02 +00:00
Maurizio Cimadamore
47f6d8a95e 7002070: If catch clause has an incompatible type, error pointer points to first exception type in list
Attribution should check each component of a disjunctive type separately, rather than checking the corresponding lub()

Reviewed-by: jjg
2010-12-06 11:50:37 +00:00
Maurizio Cimadamore
63f05334a6 7003744: Compiler error concerning final variables
Flow analysis does not cleanup init/uninint bit masks after for-loop

Reviewed-by: jjg
2010-12-06 11:49:00 +00:00
Maurizio Cimadamore
8644a0bc46 7002837: Diamond: javac generates diamond inference errors when in 'finder' mode
Javac should disable error messages when analyzing instance creation expression in 'diamond finder' mode

Reviewed-by: jjg
2010-12-03 16:32:31 +00:00
Maurizio Cimadamore
7613f7a72c 6956758: NPE in com.sun.tools.javac.code.Symbol - isSubClass
Use of TransTypes.cast() instead of TransTypes.coerce() causes NPE in Lower

Reviewed-by: jjg
2010-12-03 16:31:23 +00:00
Per Bothner
e07cc985e8 7004029: intermittent failures compiling pack200
Remove "bogus" entries from star-import scopes

Reviewed-by: mcimadamore
2010-12-02 16:37:23 -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
Maurizio Cimadamore
3e65664acf 6995200: JDK 7 compiler crashes when type-variable is inferred from expected primitive type
15.12.2.8 should use boxing when expected type in assignment context is a primitive type

Reviewed-by: jjg
2010-11-23 11:08:43 +00: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
80fdc078e7 6999635: Multicatch: crash while compiling simple code with a multicatch parameter
Missing erasure when computing stackmaps leads to assertion error

Reviewed-by: darcy
2010-11-15 14:41:21 +00:00
Maurizio Cimadamore
3a681162e4 6985719: Alike methods in interfaces (Inheritance and Overriding)
Javac should report error when interface inherits unrelated method with same erasure

Reviewed-by: jjg
2010-11-15 13:50:53 +00:00
Joe Darcy
f9f932a9f3 6991528: Support making Throwable.suppressedExceptions immutable
Reviewed-by: mcimadamore
2010-11-14 07:16:46 -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
bb03754fd1 6999067: cast for invokeExact call gets redundant cast to <type> warnings
Xlint:cast should not report cast used in order to specify target type in polymorphic signature calls

Reviewed-by: jjg
2010-11-12 12:33:52 +00:00
Maurizio Cimadamore
8f61f3fcff 6598108: com.sun.source.util.Trees.isAccessible incorrect
JavacTrees' version of isAccessible should take into account enclosing class accessibility

Reviewed-by: jjg
2010-11-12 12:32:43 +00:00
Maurizio Cimadamore
83fb083bfa 6996914: Diamond inference: problem when accessing protected constructor
Special resolution scheme for diamond inference needs to open up protected constructors in anon inner class creation

Reviewed-by: jjg
2010-11-10 12:37:25 +00:00
Jonathan Gibbons
1546b42862 6997958: test tools/javac/api/T6412669.java fails in PIT
Reviewed-by: darcy
2010-11-09 17:49:24 -08:00
Per Bothner
aa4bee613c 6998063: new Scope impl to fix Scope performance issues
Reviewed-by: jjg
2010-11-06 13:53:48 -07:00
Maurizio Cimadamore
e202a05c38 6714835: Safe cast is rejected (with warning) by javac
Rules for unchecked cast conversion do not take into account type-containment

Reviewed-by: jjg
2010-11-04 12:58:29 +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
Maurizio Cimadamore
9b7bc21bb0 6939780: add a warning to detect diamond sites
Added hidden compiler flag '-XDfindDiamond' to detect 'diamondifiable' sites

Reviewed-by: jjg
2010-11-02 12:01:35 +00:00
Maurizio Cimadamore
ac9f97939f 6996415: Override bridges causes compiler-generated code to end up with synthetic infinite loop
Temporarily disable fix for override bridges (6337171)

Reviewed-by: jjg
2010-11-02 12:00:54 +00:00
Jonathan Gibbons
49e996e3c1 6994946: option to specify only syntax errors as unrecoverable
Reviewed-by: darcy, mcimadamore
2010-10-28 18:58:43 -07:00
Jonathan Gibbons
35cc8afcf9 6993301: catch parameters do not have correct kind (i.e. ElementKind.EXCEPTION_PARAMETER)
Reviewed-by: mcimadamore
2010-10-22 14:04:33 -07:00
Jonathan Gibbons
bf00a77f2d 6987760: remove 308 support from JDK7
Reviewed-by: darcy, mcimadamore
2010-10-19 15:02:48 -07:00
Maurizio Cimadamore
4e9ee94a4d 6991980: polymorphic signature calls don't share the same CP entries
Wrong use of attr env in Infer.java prevents sharing of CP entries for PS calls

Reviewed-by: darcy, jrose
2010-10-18 19:14:36 +01:00
Jonathan Gibbons
b4b4ed03ec 6908476: test/tools/javac/T6705935.java fails if non-zip files found on platform class path
Reviewed-by: darcy
2010-10-12 14:47:51 -07:00
Jonathan Gibbons
3f57abb0ba 6988407: javac crashes running processor on errant code; it used to print error message
Reviewed-by: darcy
2010-10-12 13:15:46 -07:00
Jonathan Gibbons
1da6aa89d2 6990379: two examples fail under CheckExamples on Windows
Reviewed-by: darcy
2010-10-07 15:26:32 -07:00
Jonathan Gibbons
5967ec228d 6988836: A new JavacElements is created for each round of annotation processing
Reviewed-by: darcy
2010-10-05 11:34:43 -07:00
Joe Darcy
4231c49495 6983738: Use a JavacTestingAbstractProcessor
Reviewed-by: jjg
2010-09-29 23:27:57 -07:00
Jonathan Gibbons
ef791d4adb 6502392: Invalid relative names for Filer.createResource and Filer.getResource
Reviewed-by: darcy
2010-09-29 14:01:37 -07:00
Athijegannathan Sundararajan
55a531c45f 6967842: Element not returned from tree API for ARM resource variables
Reviewed-by: jjg, darcy
2010-09-28 22:46:36 +05:30
Jonathan Gibbons
95a1a60964 6986246: Trees object is round-specific
Reviewed-by: darcy
2010-09-27 17:28:49 -07:00
Jonathan Gibbons
2730836d77 6877202: Elements.getDocComment() is not getting JavaDocComments
6861094: javac -Xprint <file> does not print comments
6985205: access to tree positions and doc comments may be lost across annotation processing rounds

Reviewed-by: darcy
2010-09-27 14:20:39 -07:00
Lana Steuck
78db31beb6 Merge 2010-09-25 12:02:32 -07:00
Athijegannathan Sundararajan
28c94557eb 6587674: NoClassdefFound when anonymously extending a class
Reviewed-by: jjg, mcimadamore
2010-09-22 20:53:34 +05:30
Maurizio Cimadamore
05fb73163c 6863465: javac doesn't detect circular subclass dependencies via qualified names
Class inheritance circularity check should look at trees, not just symbols

Reviewed-by: jjg
2010-09-18 14:24:09 -07:00
Maurizio Cimadamore
cd3371e702 5088624: cannot find symbol message should be more intelligent
Resolve.java should keep track of all candidates found during a method resolution sweep to generate more meaningful diagnostics

Reviewed-by: jjg
2010-09-18 09:56:23 -07:00
Lana Steuck
dc37688eb9 Merge 2010-09-16 11:20:36 -07:00
Jonathan Gibbons
e0caf9f660 6985115: tests create too much output
Reviewed-by: mcimadamore
2010-09-16 09:57:37 -07:00
Jonathan Gibbons
1144807f1f 6985181: Annotations lost from classfile
Reviewed-by: mcimadamore
2010-09-16 09:56:25 -07:00
Kelly O'Hair
fd65dbfc50 6982137: Rebranding pass 2 - missed copyright changes
Reviewed-by: mbykov
2010-09-09 16:29:40 -07:00
Jonathan Gibbons
949983f6b0 6983239: TreeScanner does not scan default value for method
Reviewed-by: mcimadamore
2010-09-09 13:31:28 -07:00
Athijegannathan Sundararajan
a5aa8a0943 6900149: IllegalStateException when compiling same files and DiagnosticListener is set
Reviewed-by: jjg
2010-09-09 09:42:45 +05:30
Maurizio Cimadamore
4da9c57770 6970584: Flow.java should be more error-friendly
Added a post-attribution visitor that fixup uninitialized types/symbol in AST after erroneous attribution

Reviewed-by: jjg
2010-09-07 17:33:43 +01:00
Maurizio Cimadamore
c1ac5e8862 6981185: com.sun.tools.model.JavacTypes.contains() calls Type.contains instead of Types.containsType
Wrong implementation is causing trivial containment tests to fail unexpectedly (when such tests are executed using compiler API)

Reviewed-by: jjg
2010-09-07 17:32:52 +01:00
John Rose
cd74d63c12 6979327: method handle invocation should use casts instead of type parameters to specify return type
Infer return type for polymorphic signature calls according to updated JSR 292 draft

Reviewed-by: jjg
2010-09-07 17:32:27 +01:00
Maurizio Cimadamore
73825fc885 6337171: javac should create bridge methods when type variable bounds restricted
Javac should add synthetic overrides for inherited abstract methods in order to preserve binary compatibility

Reviewed-by: jjg
2010-09-07 17:31:54 +01:00
Jonathan Gibbons
c09fe5cafb 6930507: Symbols for anonymous and local classes made too late for use by java tree API
Reviewed-by: mcimadamore
2010-09-06 12:55:09 -07:00
Athijegannathan Sundararajan
977ad1ae6a 6956462: AssertionError exception thrown in the Compiler Tree API in JDK 7
Reviewed-by: jjg
2010-09-03 12:36:43 +05:30
Athijegannathan Sundararajan
60cf6eb1de 6458823: Messager messages on TypeParamterElements to not include position information
Reviewed-by: jjg
2010-09-03 11:25:43 +05:30
Jonathan Gibbons
753b8d0fea 6921495: spurious semicolons in class def cause empty NOPOS blocks
Reviewed-by: mcimadamore
2010-09-02 18:26:21 -07:00
Athijegannathan Sundararajan
183a7b7797 6458749: TypeParameterElement.getEnclosedElements throws NPE within javac
Reviewed-by: jjg
2010-09-02 23:10:05 +05:30
John R Rose
ca3dbff3f8 6979683: inconsistent interaction of reference cast with box/unbox conversions leaves out a useful case
Allow casts which narrow and then unbox.

Reviewed-by: mcimadamore
2010-09-01 03:19:16 -07:00
Jonathan Gibbons
0930f81131 6403465: javac should defer diagnostics until it can be determined they are persistent
Reviewed-by: mcimadamore, darcy
2010-08-30 18:03:35 -07:00
Jonathan Gibbons
e96eb944c2 6980707: Reduce use of IOException in JavaCompiler
Reviewed-by: darcy
2010-08-27 17:59:08 -07:00
Jonathan Gibbons
fba51e328b 6570730: com.sun.source.tree.ModifiersTree.getFlags() should return class type
Reviewed-by: mcimadamore
2010-08-27 17:21:17 -07:00
Jonathan Gibbons
99d83d8d85 6980724: test/tools/javac/InterfaceAssert.java sometimes fails
Reviewed-by: darcy
2010-08-27 17:14:51 -07:00
Jonathan Gibbons
de9921986c 6604599: ToolProvider should be less compiler-specific
Reviewed-by: darcy
2010-08-26 15:17:17 -07:00
Jonathan Gibbons
37fcc133f6 6960424: new option -Xpkginfo for better control of when package-info.class is generated
Reviewed-by: mcimadamore
2010-08-25 11:40:25 -07:00
Jonathan Gibbons
19a9622303 6929404: Filer.getResource(SOURCE_PATH, ...) does not work when -sourcepath contains >1 entry
Reviewed-by: darcy
2010-08-24 15:09:21 -07:00
Jonathan Gibbons
d6c5c969f0 6935638: -implicit:none prevents compilation with annotation processing
Reviewed-by: darcy
2010-08-24 11:31:00 -07:00
Jonathan Gibbons
c72513c86b 6975005: improve JavacProcessingEnvironment.Round abstraction
Reviewed-by: darcy
2010-08-23 11:56:53 -07:00
Maurizio Cimadamore
92de62f50b 6978574: return statement in try block with multi-catch causes ClassFormatError
Wrong nested loops in Gen.java causes javac to generate bad bytecode

Reviewed-by: jjg
2010-08-23 17:00:07 +01:00
Maurizio Cimadamore
f5dd0bab3f 6932571: Compiling Generics causing Inconvertible types
Types.rewriteQuantifiers() does not work well with recursive type-variable bounds

Reviewed-by: jjg
2010-08-23 16:59:30 +01:00
Maurizio Cimadamore
634d001c64 6977800: Regression: invalid resolution of supertype for local class
Resolution of superclass/superinterfaces in extends/implements clause skips local classes

Reviewed-by: jjg
2010-08-19 11:54:25 +01:00
Maurizio Cimadamore
d56e09153a 6885255: Improve usability of raw warnings
Raw warnings should be disabled in (i) instanceof expressions and (ii) when java.lang.Class is not parameterized

Reviewed-by: jjg
2010-08-19 11:52:58 +01:00
Maurizio Cimadamore
71962ebfb0 6886247: regression: javac crashes with an assertion error in Attr.java
Capture conversion does not work on nested types

Reviewed-by: jjg
2010-08-19 11:50:50 +01:00
Jonathan Gibbons
d7787c25cf 6976833: options included twice in Example SimpleCompiler
Reviewed-by: darcy
2010-08-16 14:59:21 -07:00
Maurizio Cimadamore
2801325742 6369605: Unconstrained type variables fails to include bounds
Unconstrained type-variables with recursive bounds are not inferred properly

Reviewed-by: jjg
2010-08-16 14:58:10 +01:00
Maurizio Cimadamore
91bd86216a 6976649: javac does not enforce required annotation elements in arrays
Type annotation should take advantage of recursive annotation checking

Reviewed-by: jjg
2010-08-16 14:56:23 +01:00
Maurizio Cimadamore
23a89dba04 6975231: Regression test for 6881115 is failing with compiler output not matching expected output
Missing symbols are collected in an HashSet which doesn't preserve ordering

Reviewed-by: jjg
2010-08-10 14:53:19 +01:00