Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-22 Thread Gary Funck
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

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-22 Thread Joseph S. Myers
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) > > @

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-22 Thread Gary Funck
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 *

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-19 Thread Joseph S. Myers
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

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-19 Thread Joseph S. Myers
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

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-19 Thread Gabriel Dos Reis
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

Re: Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-19 Thread Jakub Jelinek
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

Add __builtin_complex to construct complex values (C1X CMPLX* macros)

2011-08-19 Thread Joseph S. Myers
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 +