RFR: 8356057: PrintingProcessor (-Xprint) does not print type variable bounds and type annotations for Object supertypes [v5]
Joe Darcy
darcy at openjdk.org
Mon May 12 17:25:54 UTC 2025
On Mon, 12 May 2025 11:22:10 GMT, Jan Lahoda <jlahoda at openjdk.org> wrote:
>> Consider code like:
>>
>> import java.lang.annotation.*;
>>
>> public class PrintingTest<T extends CharSequence> extends @TA Object {
>> }
>>
>> @Target(ElementType.TYPE_USE)
>> @interface TA {}
>>
>>
>> when using `-Xprint` to print this code, javac produces this:
>>
>> public class PrintingTest<T> {
>>
>> public PrintingTest();
>> }
>>
>> @java.lang.annotation.Target({TYPE_USE})
>> @interface TA {
>> }
>>
>>
>> Note the type variable is missing the bound, and the annotated supertype is missing. This PR proposes to change that to:
>>
>> public class PrintingTest<T extends java.lang.CharSequence> extends java.lang. at TA Object {
>>
>> public PrintingTest();
>> }
>>
>> @java.lang.annotation.Target({TYPE_USE})
>> @interface TA {
>> }
>>
>>
>> Please also review the CSR:
>> https://bugs.openjdk.org/browse/JDK-8356058
>> and the release note:
>> https://bugs.openjdk.org/browse/JDK-8356062
>
> Jan Lahoda has updated the pull request incrementally with one additional commit since the last revision:
>
> Adding test for recursive bounds.
Marked as reviewed by darcy (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/25002#pullrequestreview-2833961234
More information about the compiler-dev
mailing list