RFR: 8318811: Compiler directives parser swallows a character after line comments
Paul Hohensee
phh at openjdk.org
Wed Oct 25 22:32:29 UTC 2023
On Wed, 25 Oct 2023 11:46:10 GMT, Volker Simonis <simonis at openjdk.org> wrote:
> Currently, the following valid compiler directive file:
>
> [{
> match: "*::*",
> c2: { Exclude: true } // c1 only for startup
> }]
>
> will be rejected by the parser:
>
> Syntax error on line 4 byte 2: Expected value separator or object end (one of ',}').
> At ']'.
> }]
>
> Parsing of compiler directives failed
>
>
> This is because `JSON::skip_line_comment()`, in contradiction to its specification, does **not** "*return the first token after the line comment without consuming it*" but does consumes it.
>
> The fix is trivial:
>
> --- a/src/hotspot/share/utilities/json.cpp
> +++ b/src/hotspot/share/utilities/json.cpp
> @@ -580,7 +580,7 @@ u_char JSON::skip_line_comment() {
> return 0;
> }
> next();
> - return next();
> + return peek();
> }
Marked as reviewed by phh (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/16359#pullrequestreview-1698344513
More information about the hotspot-dev
mailing list