On 08/22/11 22:39:04, Joseph S. Myers wrote:
[...]
> This isn't a type modifier; neither is __builtin_types_compatible_p. It's
> not within the first 28.
[...]
> I don't believe the comment is accurate; I'm not aware of any code for any
> C-family front end that uses these values as mask bits at
On Mon, 22 Aug 2011, Gary Funck wrote:
>
> On 08/19/11 15:55:12, Joseph S. Myers wrote:
> > Index: gcc/c-family/c-common.h
> > ===
> > --- gcc/c-family/c-common.h (revision 177894)
> > +++ gcc/c-family/c-common.h (working copy)
> > @
On 08/19/11 15:55:12, Joseph S. Myers wrote:
> Index: gcc/c-family/c-common.h
> ===
> --- gcc/c-family/c-common.h (revision 177894)
> +++ gcc/c-family/c-common.h (working copy)
> @@ -103,7 +103,7 @@ enum rid
>/* C extensions *
On Fri, 19 Aug 2011, Gabriel Dos Reis wrote:
> On Fri, Aug 19, 2011 at 10:55 AM, Joseph S. Myers
> wrote:
> > Note that if you did
> > allow such initializers for C, it wouldn't provide *expressions*
> > usable in static initializers, since to make a braced initializer into
> > an expression you
On Fri, 19 Aug 2011, Jakub Jelinek wrote:
> On Fri, Aug 19, 2011 at 03:55:12PM +, Joseph S. Myers wrote:
> > Bootstrapped with no regressions on x86_64-unknown-linux-gnu. Applied
> > to mainline.
>
> The new tests ICE on i686-linux:
> FAIL: gcc.dg/builtin-complex-err-1.c (internal compiler e
On Fri, Aug 19, 2011 at 10:55 AM, Joseph S. Myers
wrote:
> Note that if you did
> allow such initializers for C, it wouldn't provide *expressions*
> usable in static initializers, since to make a braced initializer into
> an expression you need a compound literal and compound literals can't
> be
On Fri, Aug 19, 2011 at 03:55:12PM +, Joseph S. Myers wrote:
> Bootstrapped with no regressions on x86_64-unknown-linux-gnu. Applied
> to mainline.
The new tests ICE on i686-linux:
FAIL: gcc.dg/builtin-complex-err-1.c (internal compiler error)
FAIL: gcc.dg/builtin-complex-err-2.c (internal co
This patch adds __builtin_complex to support generating values with
arbitrary real and imaginary parts, including in static initializers,
despite the absence of imaginary types. (Recall that X + I * Y, in
the absence of imaginary types, is really X + Y * (0.0 + 1.0I),
resulting in a real part X +