[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 07/26] qapi: add 'if' condition on top-level sch
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH 07/26] qapi: add 'if' condition on top-level schema elements |
Date: |
Thu, 17 Aug 2017 13:51:41 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Marc-André Lureau <address@hidden> writes:
> Add 'if' c-preprocessor condition on top-level schema elements:
> struct, enum, union, alternate, command, event.
>
> Variants objects types are created outside of #if blocks, since they
> may be shared by various types. Even if unused, this shouldn't be an
> issue, since those are internal types.
>
> Note that there is no checks in qapi scripts to verify that elements
> have compatible conditions (ex: if-struct used by a if-foo
> command). This may thus fail at C build time if they don't share the
> same subset of conditions.
>
> Signed-off-by: Marc-André Lureau <address@hidden>
> ---
> scripts/qapi.py | 153
> +++++++++++++++++++++++++-------
> scripts/qapi-commands.py | 4 +-
> scripts/qapi-event.py | 4 +-
> scripts/qapi-introspect.py | 46 ++++++----
> scripts/qapi-types.py | 51 +++++++----
> scripts/qapi-visit.py | 13 ++-
> scripts/qapi2texi.py | 10 +--
> tests/Makefile.include | 1 +
> tests/qapi-schema/bad-if.err | 1 +
> tests/qapi-schema/bad-if.exit | 1 +
> tests/qapi-schema/bad-if.json | 3 +
> tests/qapi-schema/bad-if.out | 0
> tests/qapi-schema/qapi-schema-test.json | 20 +++++
> tests/qapi-schema/qapi-schema-test.out | 31 +++++++
> tests/qapi-schema/test-qapi.py | 21 +++--
> 15 files changed, 272 insertions(+), 87 deletions(-)
> create mode 100644 tests/qapi-schema/bad-if.err
> create mode 100644 tests/qapi-schema/bad-if.exit
> create mode 100644 tests/qapi-schema/bad-if.json
> create mode 100644 tests/qapi-schema/bad-if.out
Missing: docs/devel/qapi-code-gen.txt update.
[...]