Kevin recently posted a minimally invasive fix for empty QAPI modules[*]. This is my attempt at a fix that also addresses the design weakness that led to the bug.
Markus Armbruster (6): qapi: Tweak "command returns a nice type" check for clarity tests/Makefile.include: Fix missing test-qapi-emit-events.[ch] qapi: Generate command registration stuff into separate files qapi: Proper intermediate representation for modules qapi: Fix code generation for empty modules qapi: Simplify QAPISchemaModularCVisitor docs/devel/qapi-code-gen.txt | 19 ++++- Makefile | 4 +- monitor/misc.c | 7 +- qga/main.c | 2 +- tests/test-qmp-cmds.c | 1 + .gitignore | 1 + qapi/Makefile.objs | 1 + qga/Makefile.objs | 1 + scripts/qapi/commands.py | 17 +++-- scripts/qapi/events.py | 2 +- scripts/qapi/gen.py | 28 ++++---- scripts/qapi/schema.py | 92 +++++++++++++++--------- scripts/qapi/types.py | 5 +- scripts/qapi/visit.py | 8 +-- tests/.gitignore | 1 + tests/Makefile.include | 9 ++- tests/qapi-schema/empty.out | 1 + tests/qapi-schema/include-repetition.out | 6 +- tests/qapi-schema/qapi-schema-test.out | 24 +++---- 19 files changed, 144 insertions(+), 85 deletions(-) -- 2.21.0