https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61791
--- Comment #1 from Mitsuru Kariya <kariya_mitsuru at hotmail dot com> --- Sorry, the text which should be quoted was mistaken. > According to C++11 standard 26.4.9[cmplx.over] paragraph 2, "if either > argument has type complex<double>, double, or an integer type, then both > arguments are effectively cast to complex<double>." According to C++11 standard 26.4.9[cmplx.over] paragraph 2, "if the argument has type double or an integer type, then it is effectively cast to complex<double>."