This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] question regarding gnu-isms

To: Anthony Liguori <aliguori@xxxxxxxxxx>
Subject: Re: [Xen-devel] question regarding gnu-isms
From: Aron Griffis <aron@xxxxxx>
Date: Thu, 27 Apr 2006 19:16:06 -0400
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 27 Apr 2006 16:16:27 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <44514DE1.3000201@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Mail-followup-to: Anthony Liguori <aliguori@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
References: <20060427223641.GG3572@xxxxxxxxxxxxxxx> <44514DE1.3000201@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.11
Hi Anthony,

Thanks for the explanation of the struct initialization.  Regarding
the second one, though...

Anthony Liguori wrote: [Thu Apr 27 2006, 07:04:01PM EDT]
> Aron Griffis wrote:
> >    #define xen_create_contiguous_region(vstart, order, address_bits) 
> >    ({0;})
> This is a really common one that lets you make statements into 
> expressions.
> #define min(a, b) ({int lhs = a; int rhs = b; (lhs < rhs) ? lhs : rhs;})

That makes sense for the example you gave, but how does it apply to
the definition in question?  Is there any difference between ({0;})
and (0) or even 0?

> All of these are documented in the GCC Info page (see the section on
> C Extensions).

:-)  I read that before posting, so I was familiar with the purpose of
enclosing compound statements in expressions.  But I'll reread in case
there's something I missed regarding the interpretation of ({0;})


Xen-devel mailing list