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(-)
The following changes since commit cb88904a54903ef6ba21a68a61d9cd51e2166304:
Merge remote-tracking branch 'remotes/amarkovic/tags/mips-queue-dec-16-2019' into staging (2019-12-16 14:07:56 +0000)
are available in the Git repository at:
git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2019-12-17
for you to fetch changes up to 328add3012e0b642134afedcd53660c30c758866:
qapi: Simplify QAPISchemaModularCVisitor (2019-12-17 08:09:28 +0100)
----------------------------------------------------------------
QAPI patches for 2019-12-17
----------------------------------------------------------------
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
On Tue, 17 Dec 2019 at 08:16, Markus Armbruster <armbru@redhat.com> wrote:
>
> The following changes since commit cb88904a54903ef6ba21a68a61d9cd51e2166304:
>
> Merge remote-tracking branch 'remotes/amarkovic/tags/mips-queue-dec-16-2019' into staging (2019-12-16 14:07:56 +0000)
>
> are available in the Git repository at:
>
> git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2019-12-17
>
> for you to fetch changes up to 328add3012e0b642134afedcd53660c30c758866:
>
> qapi: Simplify QAPISchemaModularCVisitor (2019-12-17 08:09:28 +0100)
>
> ----------------------------------------------------------------
> QAPI patches for 2019-12-17
>
> ----------------------------------------------------------------
> 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
Build failures:
OSX:
In file included from In file included from qapi/qapi-types-block.c:15:
In file included from
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block.h:17:
In file included from
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block-core.h:18:
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:176:33:
error: field has incomplete type 'QCryptoBlockOptionsQCow' (aka
'struct QCryptoBlockOptionsQCow')
qapi/qapi-types-block-core.c:15:
In file included from
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block-core.h:18:
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:176:33:
error: field has incomplete type 'QCryptoBlockOptionsQCow' (aka
'struct QCryptoBlockOptionsQCow')
QCryptoBlockOptionsQCow qcow;
QCryptoBlockOptionsQCow qcow; ^
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h115::16115::
16note:: forward declaration of 'struct QCryptoBlockOptionsQCow'
note: forward declaration of 'struct QCryptoBlockOptionsQCow'
typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
^
typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
^
CC qapi/qapi-types-common.o
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:177/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:177:33::
error: field has incomplete type 'QCryptoBlockOptionsLUKS' (aka
'struct QCryptoBlockOptionsLUKS')
QCryptoBlockOptionsLUKS luks;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:117:16:
note: forward declaration of 'struct QCryptoBlockOptionsLUKS'
33: error: typedef struct QCryptoBlockOptionsLUKS QCryptoBlockOptionsLUKS;
field has incomplete type 'QCryptoBlockOptionsLUKS' (aka 'struct
QCryptoBlockOptionsLUKS') ^
QCryptoBlockOptionsLUKS luks;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:117:16:
note: forward declaration of 'struct QCryptoBlockOptionsLUKS'
typedef struct QCryptoBlockOptionsLUKS QCryptoBlockOptionsLUKS;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:193:33:
error: field has incomplete type 'QCryptoBlockOptionsQCow' (aka
'struct QCryptoBlockOptionsQCow')
QCryptoBlockOptionsQCow qcow;
^
:193:33:/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h
:error115: :field has incomplete type 'QCryptoBlockOptionsQCow' (aka
'struct QCryptoBlockOptionsQCow')16
: note: forward declaration of 'struct QCryptoBlockOptionsQCow'
typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
^
QCryptoBlockOptionsQCow qcow;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:115:16:
note: forward declaration of 'struct QCryptoBlockOptionsQCow'
typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:236:30:
error: field has incomplete type 'QCryptoBlockInfoLUKS' (aka 'struct
QCryptoBlockInfoLUKS')
QCryptoBlockInfoLUKS luks;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:131:16:
note: forward declaration of 'struct QCryptoBlockInfoLUKS'
typedef struct QCryptoBlockInfoLUKS QCryptoBlockInfoLUKS;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:236:30:
error: field has incomplete type 'QCryptoBlockInfoLUKS' (aka 'struct
QCryptoBlockInfoLUKS')
QCryptoBlockInfoLUKS luks;
^
/Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:131:16:
note: forward declaration of 'struct QCryptoBlockInfoLUKS'
typedef struct QCryptoBlockInfoLUKS QCryptoBlockInfoLUKS;
^
4 errors generated.
x86-64 linux:
In file included from qapi/qapi-types-block-core.h:18:0,
from qapi/qapi-types-block-core.c:15:
qapi/qapi-types-crypto.h:176:33: error: field ‘qcow’ has incomplete type
QCryptoBlockOptionsQCow qcow;
^~~~
qapi/qapi-types-crypto.h:177:33: error: field ‘luks’ has incomplete type
QCryptoBlockOptionsLUKS luks;
^~~~
qapi/qapi-types-crypto.h:193:33: error: field ‘qcow’ has incomplete type
QCryptoBlockOptionsQCow qcow;
^~~~
qapi/qapi-types-crypto.h:236:30: error: field ‘luks’ has incomplete type
QCryptoBlockInfoLUKS luks;
^~~~
thanks
-- PMM
Peter Maydell <peter.maydell@linaro.org> writes:
> On Tue, 17 Dec 2019 at 08:16, Markus Armbruster <armbru@redhat.com> wrote:
>>
>> The following changes since commit cb88904a54903ef6ba21a68a61d9cd51e2166304:
>>
>> Merge remote-tracking branch 'remotes/amarkovic/tags/mips-queue-dec-16-2019' into staging (2019-12-16 14:07:56 +0000)
>>
>> are available in the Git repository at:
>>
>> git://repo.or.cz/qemu/armbru.git tags/pull-qapi-2019-12-17
>>
>> for you to fetch changes up to 328add3012e0b642134afedcd53660c30c758866:
>>
>> qapi: Simplify QAPISchemaModularCVisitor (2019-12-17 08:09:28 +0100)
>>
>> ----------------------------------------------------------------
>> QAPI patches for 2019-12-17
>>
>> ----------------------------------------------------------------
>> 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
>
> Build failures:
>
> OSX:
> In file included from In file included from qapi/qapi-types-block.c:15:
> In file included from
> /Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block.h:17:
> In file included from
> /Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block-core.h:18:
> /Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:176:33:
> error: field has incomplete type 'QCryptoBlockOptionsQCow' (aka
> 'struct QCryptoBlockOptionsQCow')
> qapi/qapi-types-block-core.c:15:
> In file included from
> /Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-block-core.h:18:
> /Users/pm215/src/qemu-for-merges/build/all/qapi/qapi-types-crypto.h:176:33:
> error: field has incomplete type 'QCryptoBlockOptionsQCow' (aka
> 'struct QCryptoBlockOptionsQCow')
> QCryptoBlockOptionsQCow qcow;
> QCryptoBlockOptionsQCow qcow; ^
>
> ^
Perplexing. None of the files involved gets changed by this pull
request. My qapi-types-crypto.h has
typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
[...]
struct QCryptoBlockOptionsQCow {
bool has_key_secret;
char *key_secret;
};
[...]
struct QCryptoBlockOpenOptions {
/* Members inherited from QCryptoBlockOptionsBase: */
QCryptoBlockFormat format;
/* Own members: */
union { /* union tag is @format */
QCryptoBlockOptionsQCow qcow;
QCryptoBlockOptionsLUKS luks;
} u;
};
before and after. May I see yours?
[More errors snipped, they're similar]
On Wed, 18 Dec 2019 at 08:42, Markus Armbruster <armbru@redhat.com> wrote:
> Perplexing. None of the files involved gets changed by this pull
> request. My qapi-types-crypto.h has
>
> typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
> [...]
> struct QCryptoBlockOptionsQCow {
> bool has_key_secret;
> char *key_secret;
> };
> [...]
> struct QCryptoBlockOpenOptions {
> /* Members inherited from QCryptoBlockOptionsBase: */
> QCryptoBlockFormat format;
> /* Own members: */
> union { /* union tag is @format */
> QCryptoBlockOptionsQCow qcow;
> QCryptoBlockOptionsLUKS luks;
> } u;
> };
>
> before and after. May I see yours?
Unfortunately not -- I've already discarded this build attempt
and continued with processing other merge requests.
thanks
-- PMM
Peter Maydell <peter.maydell@linaro.org> writes:
> On Wed, 18 Dec 2019 at 08:42, Markus Armbruster <armbru@redhat.com> wrote:
>> Perplexing. None of the files involved gets changed by this pull
>> request. My qapi-types-crypto.h has
>>
>> typedef struct QCryptoBlockOptionsQCow QCryptoBlockOptionsQCow;
>> [...]
>> struct QCryptoBlockOptionsQCow {
>> bool has_key_secret;
>> char *key_secret;
>> };
>> [...]
>> struct QCryptoBlockOpenOptions {
>> /* Members inherited from QCryptoBlockOptionsBase: */
>> QCryptoBlockFormat format;
>> /* Own members: */
>> union { /* union tag is @format */
>> QCryptoBlockOptionsQCow qcow;
>> QCryptoBlockOptionsLUKS luks;
>> } u;
>> };
>>
>> before and after. May I see yours?
>
> Unfortunately not -- I've already discarded this build attempt
> and continued with processing other merge requests.
Alright, I closed the curtains, lighted some incense sticks, stared deep
into the crystal ball, and beheld the number two. Two as in Python 2.
Are we ready to ditch Python 2 in 5.0?
© 2016 - 2026 Red Hat, Inc.