diff options
| author | gdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-11-21 00:08:02 +0000 |
|---|---|---|
| committer | gdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-11-21 00:08:02 +0000 |
| commit | c687985bc21b85dfa1bb85c86719c99ed62670e7 (patch) | |
| tree | a5e8559565720275bedb6a973da8d5e45ec00a98 /libstdc++-v3/include/bits/std_complex.h | |
| parent | 96872883e3efbf510eecc53ffa1f5e625c5421f4 (diff) | |
| download | ppe42-gcc-c687985bc21b85dfa1bb85c86719c99ed62670e7.tar.gz ppe42-gcc-c687985bc21b85dfa1bb85c86719c99ed62670e7.zip | |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37599 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/bits/std_complex.h')
| -rw-r--r-- | libstdc++-v3/include/bits/std_complex.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libstdc++-v3/include/bits/std_complex.h b/libstdc++-v3/include/bits/std_complex.h index 35ca37890e3..de5ad9a97c5 100644 --- a/libstdc++-v3/include/bits/std_complex.h +++ b/libstdc++-v3/include/bits/std_complex.h @@ -617,7 +617,7 @@ namespace std #ifdef _GLIBCPP_BUGGY_COMPLEX complex(const complex& __z) : _M_value(__z._M_value) { } #endif - explicit complex(const complex<float>&); + complex(const complex<float>&); explicit complex(const complex<long double>&); double real() const; @@ -772,8 +772,8 @@ namespace std #ifdef _GLIBCPP_BUGGY_COMPLEX complex(const complex& __z) : _M_value(__z._M_value) { } #endif - explicit complex(const complex<float>&); - explicit complex(const complex<double>&); + complex(const complex<float>&); + complex(const complex<double>&); long double real() 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 // 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 complex<float>::complex(const complex<double>& __z) : _M_value(_ComplexT(__z._M_value)) { } |

