qapi: Fix generated code when flat union has member 'kind'
A flat union's tag member gets renamed to 'kind' in the generated code. Breaks when another member named 'kind' exists. Example, adapted from qapi-schema-test.json: { 'struct': 'UserDefUnionBase', 'data': { 'kind': 'str', 'enum1': 'EnumOne' } } We generate: struct UserDefFlatUnion { EnumOne kind; union { void *data; UserDefA *value1; UserDefB *value2; UserDefB *value3; }; char *kind; }; Kill the silly rename. Reported-by:Eric Blake <eblake@redhat.com> Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com>
Showing
- scripts/qapi-types.py 2 additions, 1 deletionscripts/qapi-types.py
- scripts/qapi-visit.py 5 additions, 2 deletionsscripts/qapi-visit.py
- tests/test-qmp-input-visitor.c 1 addition, 1 deletiontests/test-qmp-input-visitor.c
- tests/test-qmp-output-visitor.c 1 addition, 1 deletiontests/test-qmp-output-visitor.c
Loading
Please register or sign in to comment