RFR: JDK-8302324: Inheritance tree does not show correct type parameters/arguments [v2]
Hannes Wallnöfer
hannesw at openjdk.org
Tue Feb 14 12:35:16 UTC 2023
On Tue, 14 Feb 2023 10:28:01 GMT, Pavel Rappo <prappo at openjdk.org> wrote:
>> Hannes Wallnöfer has updated the pull request incrementally with three additional commits since the last revision:
>>
>> - Update test/langtools/jdk/javadoc/doclet/testInheritance/TestInheritance.java
>>
>> Co-authored-by: Pavel Rappo <32523691+pavelrappo at users.noreply.github.com>
>> - Update test/langtools/jdk/javadoc/doclet/testInheritance/TestInheritance.java
>>
>> Co-authored-by: Pavel Rappo <32523691+pavelrappo at users.noreply.github.com>
>> - Update test/langtools/jdk/javadoc/doclet/testInheritance/TestInheritance.java
>>
>> Co-authored-by: Pavel Rappo <32523691+pavelrappo at users.noreply.github.com>
>
> test/langtools/jdk/javadoc/doclet/testInheritance/TestInheritance.java line 65:
>
>> 63: * @param <P> param P
>> 64: */
>> 65: public class B<O, P> extends A<O, P> { private B() { } }
>
> The source is non-compilable due to constructors being private; is it done on purpose?
You're right, my only intention here was to minimize code while avoiding warnings.
> test/langtools/jdk/javadoc/doclet/testInheritance/TestInheritance.java line 82:
>
>> 80: * @param <S> param S
>> 81: */
>> 82: public class D<R, S> extends B<S, B>{ private D() { } }
>
> While it's good for testing, recursive parametrization `B<B>` might not be what it seems. The second occurrence of B is a raw type.
I agree the code doesn't make much sense, the intention was to cover as much functionality as possible.
-------------
PR: https://git.openjdk.org/jdk/pull/12544
More information about the javadoc-dev
mailing list