diff options
| author | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-03-07 22:22:35 +0000 |
|---|---|---|
| committer | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-03-07 22:22:35 +0000 |
| commit | 5950527097a80cd266365ad5e1b57651f18f254d (patch) | |
| tree | d6a10c9c6721acbf04fa940ca023eb13726a902a /libstdc++-v3/include/std/std_complex.h | |
| parent | 84b251e4fd6537c189334eefda043e71832a5a01 (diff) | |
| download | ppe42-gcc-5950527097a80cd266365ad5e1b57651f18f254d.tar.gz ppe42-gcc-5950527097a80cd266365ad5e1b57651f18f254d.zip | |
2005-03-07 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (is_polymorphic): Don't forget
the virtual destructor, thus avoiding warnings.
* testsuite/testsuite_tr1.h (class AbstractClass,
class PolymorphicClass): Likewise.
2005-03-07 Paolo Carlini <pcarlini@suse.de>
* include/std/std_complex.h (pow(const complex<_Tp>&,
const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
__y.__rep()) or __complex_pow(__x, __y) depending on the macro
_GLIBCXX_USE_C99_COMPLEX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96048 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/std/std_complex.h')
| -rw-r--r-- | libstdc++-v3/include/std/std_complex.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libstdc++-v3/include/std/std_complex.h b/libstdc++-v3/include/std/std_complex.h index fb8122cfcad..694acdc41c9 100644 --- a/libstdc++-v3/include/std/std_complex.h +++ b/libstdc++-v3/include/std/std_complex.h @@ -966,14 +966,20 @@ namespace std { return __builtin_cpow(__x, __y); } inline __complex__ long double - __complex_pow(__complex__ long double& __x, __complex__ long double& __y) + __complex_pow(const __complex__ long double& __x, + const __complex__ long double& __y) { return __builtin_cpowl(__x, __y); } -#endif template<typename _Tp> inline complex<_Tp> pow(const complex<_Tp>& __x, const complex<_Tp>& __y) + { return __complex_pow(__x.__rep(), __y.__rep()); } +#else + template<typename _Tp> + inline complex<_Tp> + pow(const complex<_Tp>& __x, const complex<_Tp>& __y) { return __complex_pow(__x, __y); } +#endif template<typename _Tp> inline complex<_Tp> |

