qapi-visit: Honor prefix of discriminator enum

When we added support for a user-specified prefix for an enum
type (commit 351d36e), we forgot to teach the qapi-visit code
to honor that prefix in the case of using a prefixed enum as
the discriminator for a flat union. While there is still some
on-list debate on whether we want to keep prefixes, we should
at least make it work as long as it is still part of the code
base.

Backports commit 9d3524b39e1fe5f3bb7a990ad7841e469e954a3b from qemu
This commit is contained in:
Eric Blake 2018-02-20 15:38:36 -05:00 committed by Lioncash
parent a8807cd3b9
commit fa6af0733a
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7

View file

@ -294,7 +294,8 @@ void visit_type_%(c_name)s(Visitor *v, const char *name, %(c_name)s **obj, Error
case %(case)s:
''',
case=c_enum_const(variants.tag_member.type.name,
var.name))
var.name,
variants.tag_member.type.prefix))
if simple_union_type:
ret += mcgen('''
visit_type_%(c_type)s(v, "data", &(*obj)->u.%(c_name)s, &err);