RFR: 8356057: PrintingProcessor (-Xprint) does not print type variable bounds and type annotations for Object supertypes
Jan Lahoda
jlahoda at openjdk.org
Fri May 2 11:42:27 UTC 2025
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
-------------
Commit messages:
- Adjusting test output.
- Fixing type var bounds.
- 8356057: PrintingProcessor (-Xprint) does not print type variable bounds and type annotations for Object supertypes
Changes: https://git.openjdk.org/jdk/pull/25002/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25002&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8356057
Stats: 167 lines in 6 files changed: 146 ins; 2 del; 19 mod
Patch: https://git.openjdk.org/jdk/pull/25002.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/25002/head:pull/25002
PR: https://git.openjdk.org/jdk/pull/25002
More information about the compiler-dev
mailing list