Commit Graph

1145 Commits

Author SHA1 Message Date
Chris Hegarty
9c098465a5 Merge 2013-06-18 09:36:46 +01:00
Maurizio Cimadamore
1839512a15 8013789: Compiler should emit bridges in interfaces
Paired with 8015402: Lambda metafactory should not attempt to determine bridge methods

Reviewed-by: vromero
2013-06-17 20:29:31 -07:00
Chris Hegarty
be5d596030 Merge 2013-06-17 11:27:46 +01:00
Vicente Romero
5d4b6cd0d0 8008023: Get rid of utf8 chars in two tests
Reviewed-by: jjg
2013-06-14 18:01:52 +01:00
Vicente Romero
3596018eb7 8007907: javap, method com.sun.tools.javap.Main.run returns 0 even in case of class not found error
Reviewed-by: jjg
2013-06-11 09:59:34 +01:00
Chris Hegarty
d758772ec0 Merge 2013-06-11 09:25:57 +01: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
Vicente Romero
7258bbbfde 7113519: test/tools/javac/VersionOpt.java passes on windows
Reviewed-by: jjg
2013-06-10 15:18:47 +01:00
Chris Hegarty
8bb77f2674 Merge 2013-06-10 09:52:54 +01:00
Bhavesh Patel
3f6b61d75e 8015997: Additional improvement in Javadoc framing
Reviewed-by: jjg
2013-06-07 16:12:04 -07:00
Maurizio Cimadamore
dc899fbbed Merge 2013-06-06 15:38:42 +01:00
Maurizio Cimadamore
459b2cba93 8015648: Duplicate variable in lambda causes javac crash
Missing flag in synthetic lambda blog is causing duplicates symbol to go undetected

Reviewed-by: jjg, vromero
2013-06-06 15:37:23 +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
4cb585609d 7139681: Enhanced for loop: local variable scope inconsistent with JLS
For-each loop variable is incorrectly visible from the for-each expression

Reviewed-by: jjg, vromero
2013-06-06 15:32:41 +01:00
Maurizio Cimadamore
884ad14bdf 6360970: javac erroneously accept ambiguous field reference
Clash between ambiguous fields in superinterface and unambiguous field in subinterface is erroneously marked as unambiguous

Reviewed-by: jjg, vromero
2013-06-06 15:30:14 +01:00
Eric McCorkle
c58691dc6f 8015701: MethodParameters are not filled in for synthetic captured local variables
Synthetic parameters for captured local variables in an anonymous inner class are not added to MethodParameters attributes

Reviewed-by: mcimadamore
2013-06-06 08:48:23 -04:00
Alexander Zuev
63c141c512 7186887: Test T6567415.java can fail on a slow machine
Reviewed-by: jjg, ksrini
2013-06-05 16:58:10 +04:00
Jonathan Gibbons
bdfb93ee25 8004643: Reduce javac space overhead introduced with compiler support for repeating annotations
Reviewed-by: mcimadamore, jfranck
2013-06-04 14:17:50 -07:00
Vicente Romero
aeb1c4b67e 7165659: javac incorrectly sets strictfp access flag on inner-classes
Reviewed-by: jjg, mcimadamore
2013-06-04 13:21:41 +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
Maurizio Cimadamore
1c6a680e66 8008160: Five lambda TargetType tests have @ignore
Remove @ignore flags from tests that now pass

Reviewed-by: jjg
2013-06-04 11:31:12 +01:00
Maurizio Cimadamore
f0112464e0 7116676: RichDiagnosticFormatter throws NPE when formatMessage is called directly
Fix NPE in RichDiagnosticFormatter.formatMessage

Reviewed-by: jjg
2013-06-04 11:30:51 +01:00
Jonathan Gibbons
a282ed3923 8007687: javadoc -X does not include -Xdoclint
Reviewed-by: darcy
2013-06-03 17:24:47 -07:00
Jonathan Gibbons
a850ba134d 8006615: [doclint] move remaining messages into resource bundle
Reviewed-by: mcimadamore, vromero
2013-06-03 17:09:26 -07:00
Lana Steuck
8c25e96e5a Merge 2013-06-03 16:56:54 -07:00
Jonathan Gibbons
c594d824a4 8013405: DocLint should support <LI value="value">
Reviewed-by: ksrini
2013-06-03 16:22:27 -07:00
Lana Steuck
ba0fc64a03 Merge 2013-06-03 16:10:18 -07:00
Vicente Romero
7ab7587227 6695379: Copy method annotations and parameter annotations to synthetic bridge methods
Reviewed-by: mcimadamore
2013-06-01 22:09:18 +01:00
Vicente Romero
0ace868fe4 8010737: javac, known parameter's names should be copied to automatically generated constructors for inner classes
Reviewed-by: mcimadamore
2013-06-01 21:57:56 +01:00
Chris Hegarty
2252b22e09 Merge 2013-05-31 10:28:30 +01:00
Vicente Romero
06d1d22eb5 7179353: try-with-resources fails to compile with generic exception parameters
Reviewed-by: mcimadamore
2013-05-31 10:04:59 +01:00
David Katleman
b08f6026b4 8015525: JDK8 b91 source with GPL header errors
Reviewed-by: dholmes, lancea
2013-05-29 10:16:32 -07:00
Vicente Romero
33f5aae0ff 7053059: VerifyError with double Assignment using a Generic Member of a Superclass
Reviewed-by: mcimadamore
2013-05-29 10:56:29 +01:00
Vicente Romero
e58031ceba 6970173: Debug pointer at bad position
Reviewed-by: mcimadamore
2013-05-28 12:46:10 +01:00
Maurizio Cimadamore
d176f2abdf 8014494: javac crashes when varargs element of a method reference is inferred from the context
Varargs element is not refreshed after type-inference

Reviewed-by: jjg, vromero
2013-05-24 15:27:27 +01:00
Maurizio Cimadamore
9d588c1a23 8014649: Regression: bug in Resolve.resolveOperator
Missing curly braces causes Resolve.findMethod to be called spuriously

Reviewed-by: jjg, vromero
2013-05-24 15:27:12 +01:00
Maurizio Cimadamore
372fabc476 8014643: Parser regression in JDK 8 when compiling super.x
Fixed latent bug in JavacParser.analyzeParens()

Reviewed-by: jjg, vromero
2013-05-24 15:26:57 +01:00
Chris Hegarty
6bfa9213b2 Merge 2013-05-23 12:50:40 +01:00
Vicente Romero
5b545ba465 7164114: Two jtreg tests are not run due to no file extension on the test files
Reviewed-by: mcimadamore
2013-05-21 14:33:09 +01:00
Vicente Romero
6a02cd46e0 8005207: test has 2 @bug tags
Reviewed-by: mcimadamore
2013-05-21 13:50:56 +01:00
Vicente Romero
a24da77752 7060779: test/tools/javac/diags/Example.java leaves directories in tempdir
Reviewed-by: mcimadamore
2013-05-21 12:17:18 +01:00
Joel Borggrén-Franck
4a4457b237 8013180: Qualified type reference with annotations in throws list crashes compiler
Reviewed-by: jjg
2013-05-21 12:00:29 +02:00
Robert Field
495e78ce52 8010006: NPE in javac with interface super in lambda
Reviewed-by: mcimadamore
2013-05-15 06:53:01 -07:00
Maurizio Cimadamore
4b1aa379e5 8013222: Javac issues spurious raw type warnings when lambda has implicit parameter types
Bad warnings and position for lambda inferred parameter types

Reviewed-by: jjg, vromero
2013-05-15 14:03:09 +01:00
Maurizio Cimadamore
fc9e870275 8012685: Spurious raw types warning when using unbound method references
Spurious raw type warning when unbound method reference qualifier parameter types are inferred from target

Reviewed-by: jjg, vromero
2013-05-15 14:02:37 +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
Jonathan Gibbons
df6136dc9a 8014323: Add VariableTree.getNameExpression
Reviewed-by: darcy
2013-05-14 21:08:40 -07:00
Sonali Goel
20c8d5925c 8013163: Convert 4 tools multicatch tests to jtreg format
Reviewed-by: jjg
2013-05-14 18:02:48 -07: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
Robert Field
c51505263f 8012556: Implement lambda methods on interfaces as static
8006140: Javac NPE compiling Lambda expression on initialization expression of static field in interface

Lambdas occurring in static contexts or those not needing instance information should be generated into static methods.  This has long been the case for classes.  However, as a work-around to the lack of support for statics on interfaces, interface lambda methods have been generated into default methods.  For lambdas in interface static contexts (fields and static methods) this causes an NPE in javac because there is no 'this'.  MethodHandles now support static methods on interfaces.  This changeset allows lambda methods to be generated as static interface methods.  An existing bug in Hotspot (8013875) is exposed in a test when the "-esa" flag is used.  This test and another test that already exposed this bug have been marked with @ignore.

Reviewed-by: mcimadamore
2013-05-14 11:11:09 -07:00
Jonathan Gibbons
997db01200 8012308: Remove TagletOutput in favor of direct use of Content
Reviewed-by: darcy
2013-05-14 10:14:57 -07:00
Jonathan Gibbons
2a88c7b71d 8012311: Cleanup names and duplicatre code in TagletManager
Reviewed-by: darcy
2013-05-14 10:14:56 -07:00
Jonathan Gibbons
3cbf2d13c3 8012295: Cleanup JavaFX features in standard doclet
Reviewed-by: darcy
2013-05-14 10:14:56 -07:00
Jonathan Gibbons
1631e19242 8012176: reduce use of TagletOutputImpl.toString
Reviewed-by: darcy
2013-05-14 10:14:54 -07:00
Jonathan Gibbons
147bdb8230 8012175: Convert TagletOutputImpl to use ContentBuilder instead of StringBuilder
Reviewed-by: darcy
2013-05-14 10:14:54 -07:00
Jonathan Gibbons
0ac80e7f93 8011288: Erratic/inconsistent indentation of signatures
Reviewed-by: darcy
2013-05-14 10:14:53 -07:00
Jonathan Gibbons
f961eafe35 8011642: Remove LinkOutput in favor of direct use of Content
Reviewed-by: bpatel, darcy
2013-05-14 10:14:52 -07:00
Jan Lahoda
921bd43131 8012929: Trees.getElement should work not only for declaration trees, but also for use-trees
Co-authored-by: Dusan Balek <dbalek@netbeans.org>
Reviewed-by: jjg
2013-05-10 15:15:50 +02:00
Jonathan Gibbons
c037757e7b 8014363: javac test class ToolTester handles classpath incorrectly
Reviewed-by: ksrini
2013-05-12 18:18:54 -07:00
Alan Bateman
d4858d53df 8014318: tools/javac/profiles/ProfileOptionTest.java needs modifying now that javax.script is in compact1
Reviewed-by: mchung
2013-05-10 16:10:20 +01:00
Joel Borggrén-Franck
d5eeeb875b 8013485: javac can't handle annotations with a <clinit> from a previous compilation unit
Reviewed-by: mcimadamore
2013-05-08 14:10:53 +02:00
Chris Hegarty
6dc03dadce Merge 2013-05-08 10:28:35 +01:00
Jonathan Gibbons
5b3642b5ce 8004082: test/tools/javac/plugin/showtype/Test.java fails on windows: jtreg can't delete plugin.jar
Reviewed-by: vromero, mcimadamore
2013-05-07 14:27:30 -07:00
Robert Field
136b4bc9b2 8014023: When a method reference to a local class constructor is contained in a method whose number of parameters matches the number of constructor parameters compilation fails
Reviewed-by: mcimadamore
2013-05-07 06:39:34 -07:00
Jan Lahoda
57d8a7fc0f 8009724: Enhance the DocTree API with DocTreePath
Adding DocTreePath and DocTreePathScanner similar to TreePath and TreePathScanner, respectively

Co-authored-by: Ralph Benjamin Ruijs <ralphbenjamin@netbeans.org>
Reviewed-by: jjg
2013-05-06 16:22:45 +02:00
Jonathan Gibbons
4b44fd7622 8008768: Using {@inheritDoc} in simple tag defined via -tag fails
Co-authored-by: Mike Duigou <mike.duigou@oracle.com>
Reviewed-by: jjg, mduigou
2013-05-03 17:44:38 -07:00
Jonathan Gibbons
cb5ef8cc5c 8000407: remove @GenerateNativeHeader
Reviewed-by: vromero, darcy
2013-05-03 15:08:47 -07:00
Jonathan Gibbons
ce05f1c8ec 8002387: Improve rendered HTML formatting for {@code}
Reviewed-by: ksrini
2013-05-03 10:17:12 -07:00
Jonathan Gibbons
155bd74411 8012728: Normalize @ignore comments on langtools tests
Reviewed-by: vromero, mcimadamore
2013-05-03 09:56:56 -07:00
Bhavesh Patel
64831179a9 8012375: Improve Javadoc framing
Reviewed-by: mduigou, jlaskey
2013-05-03 08:52:33 -07:00
Robert Field
0ab1bb68cc 8011591: BootstrapMethodError when capturing constructor ref to local classes
Reviewed-by: mcimadamore
2013-05-01 08:46:04 -07:00
Vicente Romero
625f8df5f5 8012723: strictfp interface misses strictfp modifer on default method
Reviewed-by: mcimadamore
2013-04-26 10:04:01 +01:00
Jonathan Gibbons
2c4b48dced 8013256: javac test failing after Lambda changes to java.util.List
Reviewed-by: mduigou
2013-04-25 17:45:36 -07:00
Chris Hegarty
f748062d6b Merge 2013-04-24 11:03:32 +01:00
Lana Steuck
cdf9c2dc11 Merge 2013-04-23 15:09:12 -07:00
Joel Borggrén-Franck
16bec05e63 8011027: Type parameter annotations not passed through to javax.lang.model
Reviewed-by: jjg, darcy
2013-04-22 10:24:19 +02:00
Lana Steuck
0285880f3d Merge 2013-04-17 21:50:43 -07:00
Jan Lahoda
77b43bacfd 8008174: DocTree API should provide start and end positions for tree nodes
Adding DocSourcePositions to allow access to DocTree starting/ending position

Co-authored-by: Ralph Benjamin Ruijs <ralphbenjamin@netbeans.org>
Reviewed-by: jjg, darcy
2013-04-17 15:54:24 +02:00
Vicente Romero
0e9ad4439a 8011181: javac, empty UTF8 entry generated for inner class
Reviewed-by: jjg
2013-04-17 11:11:33 +01:00
David Katleman
bae256e87f Merge 2013-04-16 15:00:49 -07:00
Maurizio Cimadamore
8b680bdde2 8011392: Missing checkcast when casting to intersection type
Javac should emit a checkcast for each additional target type specified in an intersection type cast

Reviewed-by: jjg
2013-04-15 14:17:30 +01:00
Maurizio Cimadamore
8f2d47cf79 8011028: lang/INFR/infr001/infr00101md/infr00101md.java fails to compile after switch to JDK8-b82
Fix bug in Types.removeWildcards

Reviewed-by: jjg
2013-04-15 14:16:05 +01:00
Maurizio Cimadamore
e59fd44a73 8011376: Spurious checked exception errors in nested method call
Fallback attribution logic doesn't work properly when lambda throws checked exceptions

Reviewed-by: jjg
2013-04-15 14:15:07 +01:00
Maurizio Cimadamore
2b94dbb504 8011377: Javac crashes when multiple lambdas are defined in an array
Wrong attribution environment used by DeferredAttr

Reviewed-by: jjg
2013-04-15 14:12:17 +01:00
Maurizio Cimadamore
efc501257b 8011383: Symbol.getModifiers omits ACC_ABSTRACT from interface with default methods
Fixup for default method modifiers erroneously applies to class-level modifiers

Reviewed-by: jjg
2013-04-15 14:11:29 +01:00
Bhavesh Patel
56d97d6507 8009686: Generated javadoc documentation should be able to display type annotation on an array
Reviewed-by: jjg
2013-04-13 18:48:29 -07:00
Maurizio Cimadamore
3044b19d21 8010659: Javac Crashes while building OpenJFX
Reviewed-by: jjg
2013-04-13 12:25:44 +01:00
David Katleman
9261edec97 8012048: JDK8 b85 source with GPL header errors
Reviewed-by: iris, mduigou, jjg
2013-04-12 15:22:47 -07:00
Joel Borggrén-Franck
6f2f8b14be 7015104: use new subtype of TypeSymbol for type parameters
Reviewed-by: jjg, mcimadamore
2013-04-12 12:05:04 +02:00
Vicente Romero
cde5be4904 8011432: javac, compiler regression iterable + captured type
Reviewed-by: mcimadamore
2013-04-10 12:31:02 +01:00
Bhavesh Patel
b82442a565 8005091: javadoc should be able to return the receiver type
Reviewed-by: jjg
2013-04-09 14:18:22 -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
b4b6e4f82e 8010404: Lambda debugging: redundant LineNumberTable entry for lambda capture
Ignore indy entries in LineNumberTable

Reviewed-by: jjg
2013-04-08 15:53:08 +01:00
Maurizio Cimadamore
08df98aa3c 8010823: DefaultMethodTest.testReflectCall fails with new lambda VM
Fix lambda test

Reviewed-by: jjg
2013-04-08 15:52:05 +01:00
Joe Darcy
3aabe92c92 8011052: Add DEFAULT to javax.lang.model.Modifier
Reviewed-by: abuckley, jjg
2013-04-03 12:27:12 -07:00
Vicente Romero
a19d0728ba 4965689: class literal code wastes a byte
Reviewed-by: jjg
2013-04-02 10:51:16 +01:00
Jonathan Gibbons
18f48ab46b 8010511: Tests are creating files in /tmp
Reviewed-by: darcy
2013-03-28 10:58:45 -07:00
Jonathan Gibbons
84a50dc114 8006346: doclint should make allowance for headers generated by standard doclet
Reviewed-by: mcimadamore
2013-03-28 10:49:39 -07:00
Joe Darcy
d54accaf5c 7080464: langtools regression test failures when assertions are enabled
Reviewed-by: jjg
2013-03-22 10:08:46 -07:00
Maurizio Cimadamore
7ee4846b45 8010387: Javac crashes when diagnostic mentions anonymous inner class' type variables
Rich formatter doesn't preprocess supertypes of an anonymous inner class

Reviewed-by: jjg
2013-03-22 12:44:48 +00:00
Maurizio Cimadamore
2b66afe14d 8010303: Graph inference: missing incorporation step causes spurious inference error
Multiple equality constraints on inference vars are not used to generate new inference constraints

Reviewed-by: jjg
2013-03-22 12:43:09 +00:00
Maurizio Cimadamore
710a687c15 8009820: AssertionError when compiling java code with two identical static imports
Speculative attribution is carried out twice with same method symbol in case of static imports

Reviewed-by: jjg
2013-03-22 12:41:13 +00:00
Maurizio Cimadamore
cec722fe8f 8010101: Intersection type cast issues redundant unchecked warning
Code for checking intersection type cast is incorrectly swapping operands, leading to spurious warnings

Reviewed-by: jjg
2013-03-22 12:39:34 +00:00
Maurizio Cimadamore
2454c8c5ae 8009649: Lambda back-end should generate invokespecial for method handles referring to private instance methods
Private lambda methods should be accessed through invokespecial

Reviewed-by: jjg
2013-03-22 12:38:12 +00:00
Jonathan Gibbons
d4e9a74af5 8010317: DocLint incorrectly reports some <pre> tags as empty
Reviewed-by: darcy
2013-03-19 19:16:59 -07:00
Joe Darcy
479d5c83b0 8010179: Remove transitional target values from javac
Reviewed-by: jjg, mcimadamore
2013-03-19 13:10:40 -07:00
Peter Jensen
1e91824535 8005220: RFE to write javap tests for repeating annotations
Reviewed-by: jjg
2013-03-18 08:46:09 -07:00
Matherey Nunez
cd78ad2c8a 8007767: TargetAnnoCombo.java need to be updated to add a new test mode
Reviewed-by: jjg, strarup
2013-03-15 13:39:04 +01:00
Vicente Romero
a7e53ae56d 5053846: javac: MethodRef entries are duplicated in the constant pool
Reviewed-by: mcimadamore
2013-03-15 09:02:26 +00:00
Robert Field
46e9ef69a7 8010010: NPE generating serializedLambdaName for nested lambda
Reviewed-by: mcimadamore
2013-03-14 22:54:17 -07:00
Mandy Chung
857b7efb96 8005428: Update jdeps to read the same profile information as by javac
Reviewed-by: alanb
2013-03-14 10:33:31 -07:00
Vicente Romero
4ef6ef5d0f 8008582: jtreg failures after conversion of shell tests to Java
Reviewed-by: jjg
2013-03-14 08:30:16 +00:00
Bhavesh Patel
82210b98a8 8009684: Default top left frame should be "All Packages" in the generated javadoc documentation
Reviewed-by: jjg
2013-03-13 14:47:15 -07:00
Joel Borggrén-Franck
09e3f06ae6 8006547: Repeating annotations: No Target on container annotation with all targets on base annotation gives compiler error
Reviewed-by: jjg
2013-03-13 22:03:09 +01:00
Joel Borggrén-Franck
4de6d2c42c 7196531: Duplicate error messages on repeating annotations
Reviewed-by: jjg
2013-03-12 17:39:34 +01: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
Joel Borggrén-Franck
c3e43ab7d5 8005205: tests missing bugid for repeating annotation change
Reviewed-by: jjg, ssides
2013-03-12 11:16:30 +01: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
Vicente Romero
475c6f42ad 6181889: Empty try/finally results in bytecodes being generated
Reviewed-by: mcimadamore
2013-03-11 15:35:13 +00: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
Vicente Romero
b04bec8156 8009170: Regression: javac generates redundant bytecode in assignop involving arrays
Reviewed-by: mcimadamore
2013-03-07 10:12:13 +00:00
Vicente Romero
7fe4d602a6 8009138: javac, equals-hashCode warning tuning
Reviewed-by: mcimadamore
2013-03-07 10:04:28 +00: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
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
Jonathan Gibbons
6c39105c60 8008949: javadoc stopped copying doc-files
Reviewed-by: bpatel
2013-03-01 10:47:39 -08: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
Vicente Romero
9f2721bfb1 8008436: javac should not issue a warning for overriding equals without hasCode if hashCode has been overriden by a superclass
Reviewed-by: jjg, mcimadamore
2013-02-26 09:04:19 +00:00
Jan Valenta
63fe735683 7112427: The doclet needs to be able to generate JavaFX documentation
Reviewed-by: jjg
2013-02-24 11:36:58 -08: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
Lana Steuck
3c22954800 Merge 2013-02-21 17:49:56 -08:00
Eric Mccorkle
e84b39e459 8008658: Four new method param jtreg tests fail in nightly tests
Reviewed-by: jjg, ksrini, mcimadamore
2013-02-21 12:23:27 -08: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
6fd868a306 8007461: Regression: bad overload resolution when inner class and outer class have method with same name
Fix regression in varargs method resolution introduced by bad refactoring

Reviewed-by: jjg
2013-02-21 15:26:46 +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
Peter Jensen
556f6dfebb 8006582: Test for parameter names feature
Reviewed-by: jjg, darcy, emc
2013-02-20 15:47:14 -08:00
Vicente Romero
68a3295c8b 8006212: javac, convert jtreg tests from shell script to java
Reviewed-by: jjg
2013-02-19 17:53:16 +00:00
Jonathan Gibbons
971f247b1b 8008339: Test TargetAnnoCombo.java is broken
Reviewed-by: jjh
2013-02-18 14:29:40 -08:00
Vicente Romero
e6b61ae08a 6563143: javac should issue a warning for overriding equals without hashCode
Reviewed-by: jjg, mcimadamore
2013-02-18 14:33:25 +00:00
David Holmes
e57875e8ab Merge 2013-02-17 16:44:55 -05: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
Jonathan Gibbons
ff25ecbcbb 8008313: 8007052 breaks test/tools/javap/MethodParameters.java
Reviewed-by: darcy
2013-02-15 11:26:11 -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
Maurizio Cimadamore
b9a88adb02 Merge 2013-02-15 16:37:19 +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
Jonathan Gibbons
a695bef890 8007052: javap should include the descriptor for a method in verbose mode
Reviewed-by: mcimadamore
2013-02-15 08:28:42 -08: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
Mandy Chung
ee65d32c20 8006225: tools/jdeps/Basic.java failes with AssertionError
Reviewed-by: alanb
2013-02-14 09:43:00 -08:00
Sonali Goel
2fb38081d5 8001457: New tests needed for library-side changes for repeating annotations
Reviewed-by: darcy
2013-02-13 23:05:17 -08:00
Joel Borggrén-Franck
14c0c8eed8 8007279: Rename javax.l.model.element.Element.getAnnotations(Class) to getAnnotationsByType(Class)
Reviewed-by: darcy, abuckley
2013-02-13 10:33:13 +01:00
Werner Dietl
464abcb4fa 8008077: update reference impl for type-annotations
Reviewed-by: jjg
2013-02-12 17:15:29 -08: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
Vicente Romero
9bdfca5e56 8006334: javap, JavapTask constructor breaks with null pointer exception if parameter options is null
Reviewed-by: jjg
2013-02-12 13:36:56 +00:00
Matherey Nunez
024075fabb 8004822: RFE to write language model API tests for repeating annotations based on the spec updates
Reviewed-by: jjg, abuckley
2013-02-12 11:28:45 +01:00
Joe Darcy
44e3518c32 8007574: Provide isFunctionalInterface in javax.lang.model
Reviewed-by: jjg
2013-02-11 13:37:41 -08:00
Jonathan Gibbons
b30e5c6313 8007610: javadoc doclint does not work with -private
Reviewed-by: darcy
2013-02-08 17:35:16 -08:00
Vicente Romero
59318f1b2e 7167125: Two variables after the same operation in a inner class return different results
Reviewed-by: jjg, mcimadamore
2013-02-08 09:21:19 +00:00
Vicente Romero
561631ea44 8005931: javac doesn't set ACC_STRICT for classes with package access
Reviewed-by: mcimadamore
2013-02-08 09:15:27 +00:00
Vicente Romero
bba9417038 7166455: javac doesn't set ACC_STRICT bit on <clinit> for strictfp class
Reviewed-by: mcimadamore
2013-02-08 09:12:37 +00:00
Sonali Goel
f1442d8261 7195131: Update 2 compiler combo tests for repeating annotations to include package and default use cases
Reviewed-by: darcy
2013-02-07 20:47:06 -08:00
Jim Holmlund
c88c3bb683 8007698: jtreg test T6306137.java won't compile with ASCII encoding
Reviewed-by: ksrini
2013-02-06 23:10:35 +00:00
Jonathan Gibbons
305cf1f98b 8007566: DocLint too aggressive with not allowed here: <p>
Reviewed-by: mcimadamore
2013-02-06 07:49:31 -08: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
Jonathan Gibbons
23ca241597 8007485: test creates .class files in the test/ directory
Reviewed-by: mcimadamore
2013-02-05 21:55:41 -08: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
Jonathan Gibbons
4d8014cefa 8007490: NPE from DocumentationTool.run
Reviewed-by: darcy
2013-02-04 15:30:10 -08:00
David Holmes
581f36e1cc Merge 2013-02-04 18:08:53 -05:00
Vicente Romero
a4a897ce52 7199823: javac generates inner class that can't be verified
Reviewed-by: jjg, mcimadamore
2013-02-03 02:31:30 +00:00
Jonathan Gibbons
8f90cd0025 8007344: javac may not make tree end positions and/or doc comments available to processors and listeners
Reviewed-by: darcy
2013-02-01 12:01:03 -08:00
Jonathan Gibbons
7ee6242d0c 8007305: DPrinter: provide better usage message
Reviewed-by: mcimadamore
2013-02-01 08:36:15 -08:00
Jonathan Gibbons
81e9d881ca 8007306: DPrinter: improve display of impl-class, internal tag/kind, and external tag/kind
Reviewed-by: mcimadamore
2013-02-01 08:33:48 -08:00
Joe Darcy
71b457cb97 8007351: Malformed copyright statements in typeAnnotations test directory
Reviewed-by: jjg
2013-01-31 18:58:17 -08:00
Joe Darcy
4484857b50 8007313: Remove use of {ContainerFor/ContainedBy} from langtools
Reviewed-by: jjg
2013-01-31 12:16:03 -08:00
Jonathan Gibbons
c3cd43825b 8007034: debug printer for javac internals
Reviewed-by: mcimadamore
2013-01-30 09:47:12 -08:00
Jonathan Gibbons
ebc0ebf54d 8007096: DocLint parsing problems with some comments
Reviewed-by: mcimadamore
2013-01-30 09:40:54 -08:00
Vicente Romero
b5148d30e2 8006944: javac, combo tests should print out the number of threads used
Reviewed-by: mcimadamore
2013-01-27 19:38:44 +00: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
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
Jonathan Gibbons
ef9719425e Merge 2013-01-22 19:07:20 -08:00
Jonathan Gibbons
cac8147988 8006728: temporarily workaround jtreg problems for doclint tests in othervm
Reviewed-by: jjh
2013-01-22 19:06:05 -08:00
Jonathan Gibbons
7bdddc8471 8006723: sjavac test fails to compile on clean build
Reviewed-by: ksrini
2013-01-22 18:43:22 -08: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
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
a6fc182d40 8005851: Remove support for synchronized interface methods
Synchronized default methods are no longer supported

Reviewed-by: jjg
2013-01-21 20:15:16 +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
f251cc24ca 8006251: doclint: incorrect position for diagnostic for illegal text in tags
Reviewed-by: mcimadamore
2013-01-21 10:07:37 -08:00
Peter Jensen
7967c92db0 8006263: Supplementary test cases needed for doclint
Reviewed-by: mcimadamore
2013-01-21 10:00:46 -08:00
Jonathan Gibbons
caf667de05 8004182: Add support for profiles in javac
Reviewed-by: mcimadamore
2013-01-21 01:27:42 -05:00
Bhavesh Patel
bd4ebc07d8 8006124: javadoc/doclet should be updated to support profiles
Reviewed-by: jjg
2013-01-21 00:45:35 -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
Fredrik Öhrström
3d5f55b851 8004658: Add internal smart javac wrapper to solve JEP 139
Reviewed-by: jjg
2013-01-18 00:16:21 +01: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
Jonathan Gibbons
7b493a180e 8006228: Doclint doesn't detect <code> {@code nested inline} </code>
Reviewed-by: darcy
2013-01-16 20:41:14 -08:00
Jonathan Gibbons
17ebfc350d 8006236: doclint: structural issue hidden
Reviewed-by: darcy
2013-01-16 10:29:52 -08: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
Jonathan Gibbons
f8b61f9b0c 8006224: Doclint NPE for attribute with no value
Reviewed-by: darcy
2013-01-15 13:03:11 -08:00
Jonathan Gibbons
f92bbd3311 8006241: Test DocRootSlash.java fails
Reviewed-by: darcy
2013-01-14 14:17:25 -08: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
Jonathan Gibbons
7518dede81 8004834: Add doclint support into javadoc
Reviewed-by: darcy
2013-01-10 19:38:57 -08:00
Jonathan Gibbons
80a7fb0bb4 8006033: bug in Pretty.toSimpleString
Reviewed-by: darcy
2013-01-10 15:48:46 -08:00
Jonathan Gibbons
ca5da47efc 8006037: extra space in javac -help for -J and @ options
Reviewed-by: darcy
2013-01-10 14:09:33 -08:00
Jonathan Gibbons
4779676ac1 8005644: set default max errs and max warns
Reviewed-by: darcy
2013-01-09 10:26:58 -08: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
Jim Holmlund
259f5d7cc8 8005647: langtools/test/tools/javap/MethodParameters.java fails on windows
Fix javap to not output \r\r\n

Reviewed-by: jjg
2013-01-07 17:51:05 +00:00
Bhavesh Patel
d0ff55ec00 8005092: javadoc should check for synthesized bit on an annotation
Reviewed-by: jjg
2013-01-05 00:55:53 -08:00
Bhavesh Patel
1dbfb160ba 8004891: Check for abstract method in javadoc does not conform to the language model
Reviewed-by: jjg
2013-01-04 23:06:05 -08:00
Lana Steuck
87a4453583 Merge 2013-01-01 17:50:29 -08:00
Jonathan Gibbons
39734d27f0 8005195: Doclint regression tests fail on windows
Reviewed-by: mcimadamore
2012-12-30 06:17:36 -08:00
Eric Mccorkle
73b497c12e 8004727: Add compiler support for parameter reflection
Reviewed-by: jjg
2012-12-29 17:33:17 -08:00
Mandy Chung
e8ce882d43 8003562: Provide a CLI tool to analyze class dependencies
Reviewed-by: jjg, alanb, ulfzibis, erikj
2012-12-28 22:25:21 -08:00
Lana Steuck
f2c7a7867a Merge 2012-12-28 18:39:09 -08:00
Bhavesh Patel
8a40619e4d 8004893: the javadoc/doclet needs to be updated to accommodate lambda changes
Reviewed-by: jjg
2012-12-25 17:23:59 -08:00
Martin Buchholz
1d3157ac87 8003512: javac doesn't work with jar files with >64k entries
Reviewed-by: jjg, ksrini
2012-12-21 15:27:55 +00:00
Joe Darcy
378571e10e 8005282: Use @library tag with non-relative path for javac tests
Reviewed-by: jjg
2012-12-21 08:45:43 -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
e2bd09e6f6 8005307: fix missing @bug tags
Reviewed-by: jjh
2012-12-20 17:59:46 +00:00
Jonathan Gibbons
aee2457cd0 8004833: Integrate doclint support into javac
Reviewed-by: mcimadamore
2012-12-19 11:29:56 +00: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
Joe Darcy
da02d4f3d5 8005046: Provide checking for a default method in javax.lang.model
Reviewed-by: jjg
2012-12-18 00:24:54 -08:00
Jonathan Gibbons
3ce1d65326 8004961: rename Plugin.call to Plugin.init
Reviewed-by: mcimadamore
2012-12-17 10:55:40 -08: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
Jonathan Gibbons
4a3e904c6e 8004832: Add new doclint package
Reviewed-by: mcimadamore
2012-12-17 07:47:05 -08: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
Vicente Romero
630bba40bd 8004976: test/tools/javac/7153958/CPoolRefClassContainingInlinedCts.java can fail
Reviewed-by: jjg, mcimadamore
2012-12-14 11:16:46 +00: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
Jan Lahoda
9537c44ca5 8004504: ListBuffer could reuse List.nil() as the sentinel element
ListBuffer.last now points to the last elements with client data, or null if none.

Reviewed-by: jjg, mcimadamore
2012-12-12 20:26:56 +01:00
Vicente Romero
8fc2d739bd 8003967: detect and remove all mutable implicit static enum fields in langtools
Reviewed-by: jjg
2012-12-10 16:21:26 +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
01dc08a587 8004360: regression test DefaultMethodRegressionTests fails in langtools
Ignore broken failing test

Reviewed-by: jjg
2012-12-04 17:19:42 +00:00