* include/std/std_complex.h (pow(const complex&, const _Tp&),
pow(const _Tp&, const complex&), pow(const complex&,
const complex&)): Fully qualify with std:: a few calls.
* testsuite/26_numerics/complex/13450.cc: Minor tweak.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79338
138bc75d-0d04-0410-961f-
82ee72b054a4
+2004-03-11 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_complex.h (pow(const complex&, const _Tp&),
+ pow(const _Tp&, const complex&), pow(const complex&,
+ const complex&)): Fully qualify with std:: a few calls.
+ * testsuite/26_numerics/complex/13450.cc: Minor tweak.
+
2004-03-11 Steven Bosscher <s.bosscher@student.tudelft.nl>
PR libstdc++/11706
2004-03-11 Steven Bosscher <s.bosscher@student.tudelft.nl>
PR libstdc++/11706
if (__x.imag() == _Tp() && __x.real() > _Tp())
return pow(__x.real(), __y);
if (__x.imag() == _Tp() && __x.real() > _Tp())
return pow(__x.real(), __y);
- complex<_Tp> __t = log(__x);
+ complex<_Tp> __t = std::log(__x);
return std::polar(exp(__y * __t.real()), __y * __t.imag());
}
return std::polar(exp(__y * __t.real()), __y * __t.imag());
}
inline complex<_Tp>
pow(const complex<_Tp>& __x, const complex<_Tp>& __y)
{
inline complex<_Tp>
pow(const complex<_Tp>& __x, const complex<_Tp>& __y)
{
- return __x == _Tp() ? _Tp() : exp(__y * log(__x));
+ return __x == _Tp() ? _Tp() : std::exp(__y * std::log(__x));
}
template<typename _Tp>
inline complex<_Tp>
pow(const _Tp& __x, const complex<_Tp>& __y)
{
}
template<typename _Tp>
inline complex<_Tp>
pow(const _Tp& __x, const complex<_Tp>& __y)
{
- return __x > _Tp() ? polar(pow(__x, __y.real()), __y.imag() * log(__x))
- : pow(complex<_Tp>(__x, _Tp()), __y);
+ return __x > _Tp() ? std::polar(pow(__x, __y.real()),
+ __y.imag() * log(__x))
+ : std::pow(complex<_Tp>(__x, _Tp()), __y);
}
// 26.2.3 complex specializations
}
// 26.2.3 complex specializations
bool test __attribute__((unused)) = true;
typedef complex<T> cplx;
bool test __attribute__((unused)) = true;
typedef complex<T> cplx;
- T eps = numeric_limits<T>::epsilon() * 10;
+ T eps = numeric_limits<T>::epsilon() * 100;
cplx ref = pow(cplx(a, T()), cplx(b, T()));
cplx res1 = pow(a, cplx(b, T()));
cplx ref = pow(cplx(a, T()), cplx(b, T()));
cplx res1 = pow(a, cplx(b, T()));