Eric Blake <ebl...@redhat.com> writes:

> Demonstrate that the qapi generator doesn't deal well with unions
> that aren't up to par. Later patches will update the expected
> reseults as the generator is made stricter.  A few tests work
> as planned, but most show poor or missing error messages.
>
> Of particular note, qapi-code-gen.txt documents 'base' only for
> flat unions, but the tests here demonstrate that we currently allow
> a 'base' to a simple union, although it is exercised only in the
> testsuite.  Later patches will remove this undocumented feature, to
> give us more flexibility in adding other future extensions to union
> types.  For example, one possible extension is the idea of a
> type-safe simple enum, where added fields tie the discriminator to
> a user-defined enum type rather than creating an implicit enum from
> the names in 'data'.  But adding such safety on top of a simple
> enum with a base type could look ambiguous with a flat enum;
> besides, the documentation also mentions how any simple union can
> be represented by an equivalent flat union.  So it will be simpler
> to just outlaw support for something we aren't using.
>
> Signed-off-by: Eric Blake <ebl...@redhat.com>

Reviewed-by: Markus Armbruster <arm...@redhat.com>

Reply via email to