Re: [PATCH 05/13] qapi/parser: fix comment parsing immediately following a doc block
John Snow writes: > If a comment immediately follows a doc block, the parser doesn't ignore > that token appropriately. Fix that. > > e.g. > >> ## >> # = Hello World! >> ## >> >> # I'm a comment! > > will break the parser, because it does not properly ignore the comment > token if it immediately follows a doc block. > > Fixes: 3d035cd2cca6 (qapi: Rewrite doc comment parser) > Signed-off-by: John Snow > --- > scripts/qapi/parser.py | 2 +- > tests/qapi-schema/doc-good.json | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/scripts/qapi/parser.py b/scripts/qapi/parser.py > index 43167ef0ab3..dfd6a6c5bee 100644 > --- a/scripts/qapi/parser.py > +++ b/scripts/qapi/parser.py > @@ -584,7 +584,7 @@ def get_doc(self) -> 'QAPIDoc': > line = self.get_doc_line() > first = False > > -self.accept(False) > +self.accept() > doc.end() > return doc > > diff --git a/tests/qapi-schema/doc-good.json b/tests/qapi-schema/doc-good.json > index de38a386e8f..8b39eb946af 100644 > --- a/tests/qapi-schema/doc-good.json > +++ b/tests/qapi-schema/doc-good.json > @@ -55,6 +55,8 @@ > # - {braces} > ## > > +# Not a doc comment > + > ## > # @Enum: > # Reviewed-by: Markus Armbruster
[PATCH 05/13] qapi/parser: fix comment parsing immediately following a doc block
If a comment immediately follows a doc block, the parser doesn't ignore that token appropriately. Fix that. e.g. > ## > # = Hello World! > ## > > # I'm a comment! will break the parser, because it does not properly ignore the comment token if it immediately follows a doc block. Fixes: 3d035cd2cca6 (qapi: Rewrite doc comment parser) Signed-off-by: John Snow --- scripts/qapi/parser.py | 2 +- tests/qapi-schema/doc-good.json | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/qapi/parser.py b/scripts/qapi/parser.py index 43167ef0ab3..dfd6a6c5bee 100644 --- a/scripts/qapi/parser.py +++ b/scripts/qapi/parser.py @@ -584,7 +584,7 @@ def get_doc(self) -> 'QAPIDoc': line = self.get_doc_line() first = False -self.accept(False) +self.accept() doc.end() return doc diff --git a/tests/qapi-schema/doc-good.json b/tests/qapi-schema/doc-good.json index de38a386e8f..8b39eb946af 100644 --- a/tests/qapi-schema/doc-good.json +++ b/tests/qapi-schema/doc-good.json @@ -55,6 +55,8 @@ # - {braces} ## +# Not a doc comment + ## # @Enum: # -- 2.44.0