On 03/29/2015 10:03 AM, Markus Armbruster wrote: > What happens when I define a member key multiple times in a struct or > union type? > > If I do it directly, the parser rejects the duplicate key in > get_members(). Covered by tests/qapi-schema/duplicate-key.json. > > What if I hide the duplicate in a base type? > > If I stick this into qapi-schema-test.json: > > { 'type': 'Base', 'data': { 'foo': 'str', 'bar': 'str' } } > { 'type': 'Clash', 'base': 'Base', 'data': { 'foo': 'int' } } > { 'command': 'clash', 'data': 'Clash' } > > the resulting test-qmp-commands.h declares qmp_clash(), but > test-qmp-marshal.c doesn't define it. WTF?!?
Nice test; I'll see if I can add a patch on to the end of the series to flag it. I suspect flat unions have potential for the same issue. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature