[Bug middle-end/23497] [4.1 regression] Bogus 'is used uninitialized...' warning about std::complex<T>

mark at codesourcery dot com gcc-bugzilla@gcc.gnu.org
Wed Nov 16 16:53:00 GMT 2005



------- Comment #25 from mark at codesourcery dot com  2005-11-16 16:53 -------
Subject: Re:  [4.1 regression] Bogus 'is used uninitialized...'
 warning about std::complex<T>

schwab at suse dot de wrote:
> ------- Comment #23 from schwab at suse dot de  2005-11-16 14:20 -------
> (In reply to comment #22)
> 
>>Note I never said __imag__ a should not act like an lvalue. I just said that
>>__imag__ a = b; acts like a = COMPLEX<REAL<a>, b> which is just like what
>>a = (a&0xFFFF0000)|(b&0x0000FFFF) does.

If the compiler wants to implement it that way, that's OK.

What's not OK is to warn about the fact that the real part is
uninitialized.  There is no user out there anywhere that wants to be
warned about this case; it is in fact valid code.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23497



More information about the Gcc-bugs mailing list