|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2-resend 02/30] libxl: idl: allow KeyedUnion members to be empty
On Tue, 2013-08-27 at 15:59 +0100, Ian Jackson wrote:
> Ian Campbell writes ("Re: [Xen-devel] [PATCH v2-resend 02/30] libxl: idl:
> allow KeyedUnion members to be empty"):
> > On Tue, 2013-08-27 at 15:53 +0100, Ian Jackson wrote:
> > > I assume that the problem here is that the compiler rejects the empty
> > > struct.
> >
> > I don't recall exactly, but I think so.
>
> GCC even permits them as an extension.
I thought you meant the ocaml compiler, but of course we aren't at that
part of the series yet.
>
> > > Is it really necessary to do this with a special-cased new "None" type
> > > rather than just fixing the empty structs by putting a dummy member in
> > > them ?
> >
> > I'd rather a bit of skaniness in the idl compiler than in the end user
> > facing eventual API.
>
> You are introducing skankiness not in the IDL compiler, but in the IDL
> itself. I think it is better to have skankiness in some particular
> language's output than in the IDL input.
I think:
- ("invalid", Struct(None, [])),
+ ("invalid", None),
is reducing the amount of skank in the IDL, None has a good match with
"nothing here", while "Strict(None, [])" is just random placeholder goo,
which would be even worse if we were to artificially add a member
In hindsight I might even have gone one further and made it:
- ("invalid", Struct(None, [])),
+ ("invalid"),
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |