[jdk19] RFR: 8287379: Using @inheritDoc in an inapplicable context shouldn't crash javadoc [v2]
Jonathan Gibbons
jjg at openjdk.org
Mon Jun 27 20:01:53 UTC 2022
On Mon, 27 Jun 2022 19:15:16 GMT, Pavel Rappo <prappo at openjdk.org> wrote:
>> src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclint/Checker.java line 268:
>>
>>> 266: // Checks if the passed tree path does NOT correspond to an entity, such as
>>> 267: // the overview file and doc-files/**/*.html files.
>>> 268: private boolean notPseudoElement(TreePath p) {
>>
>> The use of a predicate named `not...` seems confusing and leads to various double negatives; it would be easier to read if this was `isPseudoElement` even if that means an extra `!` at the call site.
>
> We have public `Stream.noneMatch()`, `Files.notExists()`, `Objects.nonNull()`, and many more non-public methods that answer a negative question; but I'll change this one if you think that it will improve readability.
> It worries me that we are removing support for a feature that had explicit positive tests.
We discussed this offline at length. The tests are not specifically for the feature, but instead, they are tests for a different feature (relative links) in a variety of situations, including the suspect case of `{@inheritDoc}`.
It might be worth investigating whether we can write tests for relative links when `{@inheritDoc}` is used in a legal position, such as on a method declaration.
-------------
PR: https://git.openjdk.org/jdk19/pull/54
More information about the javadoc-dev
mailing list