On Mon, 17 May 2021 16:54:07 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:

> The primary problem was that key `compiler.err.dc.ref.bad.parens` had the 
> wrong message "')' missing in reference". That error message is not used when 
> the right parenthesis is missing, but when it occurs before the end of the 
> signature. The missing parenthesis case is caught earlier by the parens 
> balancing code in `DocCommentParser#reference` and uses message 
> `compiler.err.dc.unterminated.signature` ("unterminated signature").
> 
> I changed the message for `compiler.err.dc.ref.bad.parens` to "unexpected 
> parenthesis". 
> 
> A secondary problem was that `DocCommentParser#reference` also threw 
> "unterminated signature" when there were too many closing angle brackets or 
> parentheses. These cases are now passed through 
> in`DocCommentParser#reference` so that `ReferenceParser#parse` can throw a 
> more appropriate error ("unexpected parenthesis" or "unexpected input"). 
> 
> Here's a list of what references now cause what error messages:
> 
>  - `#foo(int`     `unterminated signature`
>  - `#foo((int))`   `unexpected parenthesis`
>  - `#foo(int))`   `unexpected parenthesis`
>  - `#foo(int)x`   `unexpected parenthesis`
>  - `F<T`        `unterminated signature`
>  - `F<T>>`    `unexpected input`
> 
> I added two new tests for the cases with too many closing brackets/parens 
> that used to fail with "unterminated signature".

This pull request has now been integrated.

Changeset: 66ab6d86
Author:    Hannes Wallnöfer <hann...@openjdk.org>
URL:       
https://git.openjdk.java.net/jdk/commit/66ab6d86d1f4d636aef697bc4c4443b901d2cb6b
Stats:     99 lines in 5 files changed: 97 ins; 0 del; 2 mod

8264181: javadoc tool Incorrect error message about malformed link

Reviewed-by: prappo

-------------

PR: https://git.openjdk.java.net/jdk/pull/4068

Reply via email to