Commit Graph

1238 Commits

Author SHA1 Message Date
Evgeny Mandrikov e52d76e53e 8160928: javac incorrectly copies over interior type annotations to bridge method
Reviewed-by: vromero, mcimadamore
2018-08-31 18:43:01 +01:00
Abhijit Saha 6f02fdaef4 Merge 2018-02-13 12:30:19 -08:00
Ivan Gerasimov c39c67ffc0 8189997: Enhance keystore mechanisms
8194259: keytool error: java.io.IOException: Invalid secret key format

Reviewed-by: mullan, valeriep, rriggs, ahgross
2018-02-06 09:06:47 -08:00
Srikanth Adayapalam cf3017f096 8191969: javac produces incorrect RuntimeInvisibleTypeAnnotations length attribute
Reviewed-by: jlahoda, vromero
2017-12-04 10:33:18 -05:00
Maurizio Cimadamore f657a91f07 8180660: missing LNT entry for finally block
Co-authored-by: Vicente Romero <vicente.romero@oracle.com>
Reviewed-by: mcimadamore, vromero
2017-06-07 00:04:12 -07:00
Brent Christian 554232c123 8176329: jdeps to detect MR jar file and output a warning
Reviewed-by: mchung
2017-04-27 16:18:18 -07:00
Rob McKenna aa61fb7ff0 Merge 2017-01-20 16:23:01 +00:00
Maurizio Cimadamore 98424c88ce 8168774: Polymorhic signature method check crashes javac
Check for polysig method assumes arity is greater than zero

Reviewed-by: vromero
2017-01-05 18:58:06 +00:00
Abhijit Saha 6fe2ae3daf Merge 2016-08-08 15:40:58 -07:00
Aleksei Efimov 172b8bc266 8138725: Add options for Javadoc generation
Reviewed-by: jjg
2016-07-18 23:53:12 +03:00
Srikanth Adayapalam 916b8b18e1 8129740: Incorrect class file created when passing lambda in inner class constructor
Lambda implementation method must be static when lambda is an argument to an explicit constructor call.

Reviewed-by: mcimadamore
2016-05-25 15:09:13 +05:30
David Buck ed8f2f7406 8143647: Javac compiles method reference that allows results in an IllegalAccessError
Lambda implementation method synthesized by javac should not mention inaccessible types.

Reviewed-by: mcimadamore
2016-03-29 10:48:49 +00:00
Ramanand Patil 644ed4737e 8066871: java.lang.VerifyError: Bad local variable type - local final String
BaseType() erroneously called on MethodResultInfo causes lack of constant type info

Reviewed-by: jlahoda, mcimadamore
2016-03-02 18:33:38 +05:30
Maurizio Cimadamore 84f6578032 8130304: Inference: NodeNotFoundException thrown with deep generic method call chain
Bug in Tarjan implementation is generating node ids which can overflow 32 bits

Reviewed-by: vromero
2016-01-26 21:08:18 +00:00
Aleksei Efimov 34b5d02bb9 8068254: Method reference uses wrong qualifying type
Generated code fails with IllegalAccessError due to compiler's mishandling of packageprivate classes in method reference expressions.

Reviewed-by: rfield, mcimadamore
2016-01-22 10:49:45 +03:00
Srikanth Adayapalam 769b662af4 8130506: javac AssertionError when invoking MethodHandle.invoke with lambda parameter
Reviewed-by: mcimadamore
2016-01-18 10:58:12 +00:00
Jan Lahoda 1b0e2710d9 8139751: Javac crash with -XDallowStringFolding=false
When string folding is disabled, need to keep the original expression.

Reviewed-by: mcimadamore
2015-10-19 12:41:45 +02:00
Aleksei Efimov 0e88d571ef 8134007: Improve string folding
Generalize string folding algorithm to detect mulitple groups of foldable constants within an concat expression

Reviewed-by: jlahoda
2016-01-15 19:57:58 +03:00
Srikanth Adayapalam b8af6c4957 8145466: javac: No line numbers in compilation error
Compiler should not use the syntax tree from enclosing contexts in diagnostics even when the enclosing contexts are consulted for method lookup.

Reviewed-by: mcimadamore
2016-01-07 08:45:19 +00:00
Maurizio Cimadamore a91e63dcbc 8065986: Compiler fails to NullPointerException when calling super with Object<>()
Missing POLY kind selector on recursive constructor calls with poly arguments

Reviewed-by: vromero
2015-11-12 22:10:46 +00:00
Maurizio Cimadamore 20580438a3 8066974: Compiler doesn't infer method's generic type information in lambda body
Add logic to avoid post-inference triggers on temporarty AST types

Reviewed-by: vromero
2015-11-12 21:20:49 +00:00
Andreas Eriksson 835c0b0d2e 8134759: jdb: Incorrect stepping inside finally block
Add LineNumberTable attribute for return bytecodes split around finally code

Reviewed-by: mcimadamore
2015-10-27 10:35:14 +01:00
Jan Lahoda edf0c962eb 8135307: CompletionFailure thrown when calling FieldDoc.type, if the field's type is missing
Handling CompletionFailures inside the Javadoc API implementation.

Reviewed-by: mcimadamore, ksrini, jjg
2015-09-28 16:56:26 +02:00
Jan Lahoda 77e904af76 8067422: Lambda method names are unnecessarily unstable
Lambda method numbers are now assigned per class for non-serializable lambdas.

Reviewed-by: mcimadamore, rfield, vromero
2015-09-16 10:56:23 +02:00
Rob McKenna eb10d5455d 8071291: Compiler crashes trying to cast UnionType to IntersectionClassType
Reviewed-by: mcimadamore
2015-08-21 13:52:30 +01:00
Brian Burkhalter c6584c0d39 8130426: Test tools/javac/links/LinksTest.java fails on Windows 10(x64)
Restructure test to use the logic from the JDK 9 version.

Reviewed-by: jjg
2015-07-08 11:40:43 -07:00
Andreas Lundblad 030d57517f 8028389: NullPointerException compiling annotation values that have bodies
Made sure anonymous class declarations inside class- and package-level annotations are properly entered.

Reviewed-by: jfranck
2014-01-10 12:47:15 +01:00
Maurizio Cimadamore f5aaa6b691 8039262: Java compiler performance degradation jdk1.7 vs. jdk1.6 should be amended
Avoiding Scope listener leak by avoiding cache misses in Types.MembersClosureCache

Reviewed-by: mcimadamore, vromero
2015-06-10 09:13:27 +02:00
Srikanth Adayapalam bab493b66f 8080842: Using Lambda Expression with name clash results in ClassFormatError
Ensure ScopeImpl can cope properly with remove when a field and method share the name

Reviewed-by: mcimadamore, jlahoda
2015-05-29 10:15:36 +05:30
Srikanth Adayapalam 0ffc327c12 8079613: Deeply chained expressions + several overloads + unnecessary inference result in excessive compile times
Eliminate compile time performance bottlneck due to mischaracterization of standalone expressions as being poly expressions.

Reviewed-by: mcimadamore, jlahoda
2015-05-11 13:28:14 +05:30
Vicente Romero 91eb85cce1 8073372: Redundant CONSTANT_Class entry not generated for inlined constant
Reviewed-by: jjg
2015-06-01 11:07:29 -07:00
Maurizio Cimadamore c0bd7bdb12 8055963: Inference failure with nested invocation
Revise heuristics to force eager instantiation of return inference vars

Reviewed-by: vromero
2015-05-26 11:03:40 +01:00
Mandy Chung 2b19eb4d49 8080815: Update 8u jdeps list of internal APIs
Reviewed-by: dfuchs
2015-05-21 11:14:23 -07:00
Mandy Chung 665c33198e 8068937: jdeps shows "not found" if target class has no reference other than its own package
Reviewed-by: alanb
2015-05-20 17:11:28 -07:00
Jan Lahoda a3e88b936c 8080338: Incorrect GPL header causes RE script to miss swap to commercial header for licensee source bundle
8080339: Incorrect GPL header causes RE script to miss swap to commercial header for licensee source bundle
8080340: Incorrect GPL header causes RE script to miss swap to commercial header for licensee source bundle

Fixing incorrect file headers; also reviewed by kevin.l.brown@oracle.com

Reviewed-by: vromero
2015-05-18 09:27:09 +02:00
Maurizio Cimadamore 07da94ef86 8064803: Javac erroneously uses instantiated signatures when merging abstract most-specific methods
Wrong method type used in AmbiguousError.mergeAbstracts

Reviewed-by: jlahoda
2015-05-01 16:43:28 +01:00
Maurizio Cimadamore 67589cfc73 8061778: Wrong LineNumberTable for default constructors
Synthetic empty blocks generated by Lower are erroneously picked up by Gen

Reviewed-by: jjg
2014-10-24 10:54:04 +01:00
Dan Smith e0ae597d5a 8075520: Varargs access check mishandles capture variables
8077786: Check varargs access against inferred signature

Reviewed-by: vromero
2015-04-17 08:55:59 -06:00
Jan Lahoda 4af3847ddd 8054220: Debugger doesn't show variables *outside* lambda
8058227: Debugger has no access to outer variables inside Lambda

Put local variables captured by lambda into the lambda method's LocalVariableTable.

Reviewed-by: mcimadamore, rfield
2015-03-26 11:34:50 +01:00
Srikanth Adayapalam 99ced8f60c 8037546: javac -parameters does not emit parameter names for lambda expressions
MethodParameters attribute is missing for synthetic methods encoding lambda expressions.

Reviewed-by: rfield, mcimadamore
2015-01-13 10:25:24 +01:00
Vicente Romero a7878a1ccc 8069545: javac shouldn't check nested stuck lambdas during overload resolution
Nested lambdas should not be considered while overload resolution is in progress

Co-authored-by: Srikanth Adayapalam <srikanth.adayapalam@oracle.com>
Reviewed-by: mcimadamore
2015-02-12 10:16:19 +05:30
Jan Lahoda ca3cd27fc5 8068517: Compiler may generate wrong InnerClasses attribute for static enum reference
Making sure enum's abstractness is resolved before writing InnerClasses entry about it.

Reviewed-by: mcimadamore
2015-02-13 17:18:21 +01:00
Sean Coffey bcb1c805ce Merge 2015-01-21 18:43:01 +00:00
Maurizio Cimadamore 9a126a2f17 8069181: java.lang.AssertionError when compiling JDK 1.4 code in JDK 8
Remove erroneous call to modifiersOpt() in variable parsing

Reviewed-by: jfranck, jlahoda
2015-01-21 10:42:49 +00:00
Vicente Romero 6dea79e80e 8064857: javac generates LVT entry with length 0 for local variable
Reviewed-by: mcimadamore, jjg
2015-01-20 14:14:33 -08:00
Joe Darcy 51f333ee32 8068639: Make certain annotation classfile warnings opt-in
Reviewed-by: jjg
2015-01-09 09:27:16 -08:00
Abhijit Saha 0016f10a2a Merge 2014-12-17 12:51:31 -08:00
Eric McCorkle ba82472a1e 8067039: Revert changes to annotation attribute generation
Revert changes from JDK-8029012 and JDK-8065132

Reviewed-by: jjg
2014-12-11 10:06:50 -05:00
Abhijit Saha d12a56784b Merge 2014-12-04 11:32:47 -08:00
Abhijit Saha 8cca10b1d0 Merge 2014-11-19 12:56:26 -08:00