Commit Graph

894 Commits

Author SHA1 Message Date
Jan Lahoda
52d83865b8 8026180: com.sun.source.tree.NewArrayTree refers to com.sun.tools.javac.util.List
Correcting import in NewArrayTree, adding test protecting againts improper types in API signatures

Reviewed-by: jjg
2013-10-15 16:23:18 +02:00
Jonathan Gibbons
0837163643 8025998: Missing LV table in lambda bodies
Reviewed-by: vromero
2013-10-14 23:07:43 -07:00
Jan Lahoda
da21af58f4 8014016: javac is too late detecting invalid annotation usage
Adding new queue to Annotate for validation tasks, performing annotation validation during enter

Reviewed-by: jjg, emc, jfranck
2013-10-14 22:11:09 +02:00
Jan Lahoda
958096d69b 6278240: Exception from AnnotationValue.getValue() should list the found type not the required type
Reviewed-by: darcy, jfranck, jjg
2013-10-11 15:49:15 +02:00
Robert Field
a8e63b82f1 8012557: Implement lambda methods on interfaces as private
8016320: Method reference in subinterface of type I.super::foo produces exception at runtime

Now that the VM supports interface instance private methods, lambda methods and lambda bridges are always private. Access is now through invokespecial.

Reviewed-by: vromero, jlahoda
2013-10-10 23:26:56 -07:00
Eric McCorkle
a78344ba67 8008762: Type annotation on inner class in anonymous class show up as regular type annotations
8015257: type annotation with TYPE_USE and FIELD attributed differently if repeated
8013409: test failures for type annotations

Fixes to address some problems in type annotations

Reviewed-by: jfranck, jjg
2013-10-10 20:12:08 -04:00
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
Jan Lahoda
7de3ec870d 8025141: java.lang.ClassFormatError: Illegal field modifiers in class (...)
Should not generate non-public $assertionsDisabled field into interfaces

Reviewed-by: jjg, vromero
2013-10-09 13:06:49 +02:00
Andreas Lundblad
f6875dad27 8024415: Bug in javac Pretty: Wrong precedence in JCConditional trees
Fixed precedence and associativity issues with pretty printing of JCConditional expressions.

Co-authored-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: jfranck
2013-10-08 15:33:28 +02:00
Steve Sides
03c9c56f88 8005542: jtreg test OverrideBridge.java contains @ignore
Reviewed-by: jjg
2013-10-04 16:23:05 -07:00
Jonathan Gibbons
be225c4b49 8022163: javac exits with 0 status and no messages on error to construct an ann-procesor
Reviewed-by: darcy
2013-10-04 13:59:13 -07:00
Jan Lahoda
dd031ed38f 8025118: Annotation processing api returns default modifier for interface without default methods
TypeElement.getModifiers() should not contain Modifier.DEFAULT

Reviewed-by: darcy, jjg
2013-10-04 08:29:54 +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
Eric McCorkle
d9502c856a 8021339: Compile-time error during casting array to intersection
Add ability to have arrays in intersection types.

Reviewed-by: jjg, vromero
2013-10-01 17:41:57 -04:00
Eric McCorkle
d03ac9784a 8025413: NPE in Type.java due to recent change
IsCompound throws a NPE for noType and other types.  Made it return a reasonable result instead.

Reviewed-by: jjg, vromero
2013-09-28 13:46:14 -04:00
Kumar Srinivasan
b43acfee98 8015073: c.s.t.javac.api.JavacTool.getTask() - more informative exception
Reviewed-by: jjg
2013-09-27 16:05:56 -07:00
Robert Field
9a6f8e8463 8025548: langtools test tools/javac/lambda/methodReference/BridgeMethod.java incorrectly assumes no other methods generated in lambda class
Reviewed-by: vromero
2013-09-27 13:06:38 -07:00
Sonali Goel
475b209cf7 8025537: Convert 2 javac/enumdeclarations tests in jtreg for regression ws
Reviewed-by: jjg
2013-09-27 10:39:52 -07:00
Jan Lahoda
6c9b134b12 8022765: Compiler crashes with exception on wrong usage of an annotation
Error recovery for incorrect annotation attribute values - ensure the values are always attributed appropriately

Reviewed-by: jfranck, jjg
2013-09-27 17:28:31 +02:00
Vicente Romero
cae732b133 8024497: crash returning this-referencing lambda from default method
Reviewed-by: jjg, rfield
2013-09-27 10:24:56 +01:00
Sonali Goel
e60e01be01 8011738: Write test to check for bootstrap attributes for lambda expressions in class file
Reviewed-by: mcimadamore
2013-09-26 15:04:15 -07:00
Eric McCorkle
c101eca6bb 6499673: Assertion check for TypeVariable.getUpperBound() fails
Fix TypeVariable.getUpperBound to return results as specified

Reviewed-by: jjg
2013-09-23 15:37:59 -04:00
Alexander Zuev
e815841576 4881267: improve diagnostic for "instanceof T" for type parameter T
Reviewed-by: vromero, jjg
2013-09-23 18:29:27 +04:00
Alexander Zuev
eacd2bcb72 7154966: CRs found to be in Fixed state with no test and no noreg- keyword
Reviewed-by: ksrini
2013-09-23 17:27:38 +04:00
Andreas Lundblad
48774216f2 6386236: Please rename com.sun.tools.javac.util.ListBuffer.lb()
Static factory method ListBuffer.lb removed. Replaced by constructor calls.

Reviewed-by: jfranck, jjg
2013-09-23 10:42:38 +02:00
Andreas Lundblad
a2a38c6b65 8024988: javac, LVT test harness should generate tests .class files in the scratch folder
Set the CLASS_OUTPUT location to the scratch directory. Changed the argument to checkClassFile accordingly.

Reviewed-by: jjg, vromero
2013-09-23 10:10:07 +02:00
Vicente Romero
70e873ec73 8024696: Missing null check in bound method reference capture
Reviewed-by: jjg, briangoetz
2013-09-22 12:53:03 +01:00
Jan Lahoda
9f6d1df747 8023835: TreeMaker.QualIdent() too leafy
Reviewed-by: jjg
2013-09-20 16:33:35 +02:00
Vicente Romero
e3d450e3d3 8024437: Inferring the exception thrown: sometimes fails to compile
Reviewed-by: jjg
2013-09-19 20:57:37 +01:00
Jan Lahoda
1c9e7a8edc 8022567: Javac Should Generate Warnings For Raw Array Type
Reviewed-by: jjg
2013-09-19 17:05:08 +02:00
Andreas Lundblad
775822bed7 8024127: javac, Code_attribute.exception_table_langth should be Code_attribute.exception_table_length
Exception_table_langth renamed to exception_table_length

Reviewed-by: jfranck, jjg
2013-09-18 14:39:27 +02:00
Jonathan Gibbons
7cc012b008 8024538: -Xdoclint + -Xprefer:source + incremental compilation == FAIL
Reviewed-by: darcy
2013-09-17 14:17:13 -07:00
Jan Lahoda
315696de00 8021112: Spurious unchecked warning reported by javac
6480588: No way to suppress deprecation warnings when implementing deprecated interface

Fixing DeferredLintHandler configuration, so lint warnings are reported with correct @SuppressWarnings settings

Reviewed-by: jjg, vromero
2013-09-16 14:13:44 +02:00
Vicente Romero
86baa378e4 7047734: javac, the LVT is not generated correctly in several scenarios
Reviewed-by: jjg, mcimadamore
2013-09-14 19:04:47 +01:00
Vicente Romero
0a312ba2ce 8024207: javac crash in Flow.AssignAnalyzer.visitIdent
Reviewed-by: jjg
2013-09-14 15:23:21 +01:00
Vicente Romero
204f4422ba 8023558: Javac creates invalid bootstrap methods for complex lambda/methodref case
Co-authored-by: Maurizio Cimadamore <maurizio.cimadamore@oracle.com>
Reviewed-by: jjg
2013-09-12 22:40:29 +01:00
Eric McCorkle
914b1751c4 8013846: javac fails to reject semantically equivalent generic method declarations
Cause javac to consider intersection types with the same elements to be equal regardless of order.

Reviewed-by: jjg, vromero
2013-09-12 14:52:28 -04:00
Andreas Lundblad
fae7d60062 8005222: Fixed bugs should have tests with bugid in @bug tag
Reviewed-by: jfranck, jjg
2013-09-10 13:47:51 +02:00
Jan Lahoda
a9e5e17bd2 8019521: Enhanced rethrow disabled in lambdas
Fixing effectively final detection inside lambdas, small cleanup related to thrown types detection in lambdas

Reviewed-by: mcimadamore, jjg
2013-09-09 23:13:45 +02:00
Jonathan Gibbons
810c76f567 8006972: jtreg test fails: test/tools/javac/processing/model/element/TestMissingElement/TestMissingElement.java
Reviewed-by: darcy
2013-09-09 17:36:23 -07:00
Brian Goetz
b03e5fc290 8015322: Javac template test framework
Putback of the javac template test framework from the Lambda repository

Reviewed-by: jjg
2013-09-09 17:11:55 -04:00
Eric McCorkle
5b76a0d216 8022322: Reject default and static methods in annotation
Causes javac to reject static and default method declarations inside an annotation

Reviewed-by: jjg
2013-09-09 16:26:55 -04:00
Vicente Romero
1704a9454c 8024154: Fix for 8016177: structural most specific and stuckness breaks 6 langtools tests
Reviewed-by: jjg, jfranck
2013-09-09 16:32:08 +01:00
Andreas Lundblad
5df75e001d 8022260: Rename javac.code.Annotations to javac.code.SymbolMetadata
Reviewed-by: jfranck, jjg
2013-09-09 09:58:20 +02:00
Vicente Romero
a3b1359af5 8024398: javac, compiler crashes with try with empty body
Reviewed-by: jjg
2013-09-08 11:54:21 +01:00
Vicente Romero
26758f0ffd 8024039: javac, previous solution for JDK-8022186 was incorrect
Reviewed-by: jjg
2013-09-06 09:53:24 +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
Vicente Romero
cab6b226ff 8023545: Misleading error message when using diamond operator with private constructor
Reviewed-by: jjg
2013-09-03 23:41:37 +01:00
Maurizio Cimadamore
06caeea3d6 8023389: Javac fails to infer type for lambda used with intersection type and wildcards
Reviewed-by: jjg, vromero
2013-09-03 23:31:33 +01:00