std_complex.h (complex<double>): Constructor complex<double>::complex(const complex<float>&) is not explicit...
2000-11-21 Gabriel Dos Reis <gdr@codesourcery.com> * include/bits/std_complex.h (complex<double>): Constructor complex<double>::complex(const complex<float>&) is not explicit; since it is a promotion. (complex<long double>): Constructors taking complex<float> and complex<double> are not explicit. From-SVN: r37599
This commit is contained in:
parent
b5ecf629d5
commit
b555ebaa9e
|
@ -1,3 +1,11 @@
|
||||||
|
2000-11-21 Gabriel Dos Reis <gdr@codesourcery.com>
|
||||||
|
|
||||||
|
* include/bits/std_complex.h (complex<double>): Constructor
|
||||||
|
complex<double>::complex(const complex<float>&) is not explicit;
|
||||||
|
since it is a promotion.
|
||||||
|
(complex<long double>): Constructors taking complex<float> and
|
||||||
|
complex<double> are not explicit.
|
||||||
|
|
||||||
2000-11-20 Benjamin Kosnik <bkoz@redhat.com>
|
2000-11-20 Benjamin Kosnik <bkoz@redhat.com>
|
||||||
|
|
||||||
* include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
|
* include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
|
||||||
|
|
|
@ -617,7 +617,7 @@ namespace std
|
||||||
#ifdef _GLIBCPP_BUGGY_COMPLEX
|
#ifdef _GLIBCPP_BUGGY_COMPLEX
|
||||||
complex(const complex& __z) : _M_value(__z._M_value) { }
|
complex(const complex& __z) : _M_value(__z._M_value) { }
|
||||||
#endif
|
#endif
|
||||||
explicit complex(const complex<float>&);
|
complex(const complex<float>&);
|
||||||
explicit complex(const complex<long double>&);
|
explicit complex(const complex<long double>&);
|
||||||
|
|
||||||
double real() const;
|
double real() const;
|
||||||
|
@ -772,8 +772,8 @@ namespace std
|
||||||
#ifdef _GLIBCPP_BUGGY_COMPLEX
|
#ifdef _GLIBCPP_BUGGY_COMPLEX
|
||||||
complex(const complex& __z) : _M_value(__z._M_value) { }
|
complex(const complex& __z) : _M_value(__z._M_value) { }
|
||||||
#endif
|
#endif
|
||||||
explicit complex(const complex<float>&);
|
complex(const complex<float>&);
|
||||||
explicit complex(const complex<double>&);
|
complex(const complex<double>&);
|
||||||
|
|
||||||
long double real() const;
|
long double real() const;
|
||||||
long double imag() const;
|
long double imag() const;
|
||||||
|
@ -920,6 +920,8 @@ namespace std
|
||||||
|
|
||||||
// These bits have to be at the end of this file, so that the
|
// These bits have to be at the end of this file, so that the
|
||||||
// specializations have all been defined.
|
// specializations have all been defined.
|
||||||
|
// ??? No, they have to be there because of compiler limitation at
|
||||||
|
// inlining. It suffices that class specializations be defined.
|
||||||
inline
|
inline
|
||||||
complex<float>::complex(const complex<double>& __z)
|
complex<float>::complex(const complex<double>& __z)
|
||||||
: _M_value(_ComplexT(__z._M_value)) { }
|
: _M_value(_ComplexT(__z._M_value)) { }
|
||||||
|
|
Loading…
Reference in New Issue