[Bug libstdc++/56111] {float,double,long double} complex not accepted anymore

glisse at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Jan 26 10:58:00 GMT 2013


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

Marc Glisse <glisse at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|c++                         |libstdc++

--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> 2013-01-26 10:58:22 UTC ---
(In reply to comment #2)
> What happens if we simply #undef at the beginning of <complex> and nothing
> else?

My idea in comment #1 was that if people include <complex> and then <complex.h>
(the order is important), with your suggestion, they won't be able to use
std::complex, so there is little point including <complex>.

Now in C++11, complex.h actually first includes ccomplex, which seems to be an
alias for complex... so there is no way to include complex.h and not complex.
Which seems to imply that at least in C++11, we should just always undef
complex.



More information about the Gcc-bugs mailing list