Problems with PR 21210

Gabriel Dos Reis gdr@integrable-solutions.net
Wed Jun 1 04:54:00 GMT 2005


Mark Mitchell <mark@codesourcery.com> writes:

| PR 21210 is a complaint that G++ 4.0 has stopped allowing conversions
| from integers to "__complex__ float".  This is a perfectly reasonable

My reading of the PR is a bit different, especially comment #1

  typedef float __complex__ fcomplex;
  fcomplex cplx = fcomplex();

which effectively produces the error

21210.C:2: error: invalid cast from type 'int' to type 'float __complex__'

which is at least disturbing, because there is not cast and no int
here.  Rather, there is a default value fcomplex() being requested and
copied into another fcomplex.  There is no conversion requested.  That
appears to me to be entirely isolated from the std::complex<> thingy.
Why is that observation flawed? 

-- Gaby



More information about the Libstdc++ mailing list