This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/18882] wrong results of pow( complex<long double>(2, 1), odd integer )
- From: "pcarlini at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Dec 2004 10:18:50 -0000
- Subject: [Bug libstdc++/18882] wrong results of pow( complex<long double>(2, 1), odd integer )
- References: <20041208084814.18882.mikulik@physics.muni.cz>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pcarlini at suse dot de 2004-12-08 10:18 -------
So, let's begin from the end: there is nothing *unimplemented* as far as
operator* is concerned: have a look to section 26.2.1 of the Standard, there
are *no* overloads taking two different template parameters.
The first issue, serious, does *not* occur on mainline, and seems a very nasty
compiler bug: in fact, the library code for pow(complex, int) is *identical* in
mainline and 3.4. Also, there are no specializations for long double vs double
and in presence of different behaviors, this is alone a very good reason to
suspect the compiler.
Gaby, what shall we do? I'm afraid that the compiler people will not be able
to work with the full std::complex testcase :-(( but a recategorization seems
rather obvious to me.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |gdr at integrable-solutions
| |dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18882