]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/src/c++98/complex_io.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / src / c++98 / complex_io.cc
CommitLineData
b2dad0e3
BK
1// The template and inlines for the -*- C++ -*- complex number classes.
2
a945c346 3// Copyright (C) 2000-2024 Free Software Foundation, Inc.
b2dad0e3
BK
4//
5// This file is part of the GNU ISO C++ Library. This library is free
6// software; you can redistribute it and/or modify it under the
7// terms of the GNU General Public License as published by the
748086b7 8// Free Software Foundation; either version 3, or (at your option)
b2dad0e3
BK
9// any later version.
10
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14// GNU General Public License for more details.
15
748086b7
JJ
16// Under Section 7 of GPL version 3, you are granted additional
17// permissions described in the GCC Runtime Library Exception, version
18// 3.1, as published by the Free Software Foundation.
19
20// You should have received a copy of the GNU General Public License and
21// a copy of the GCC Runtime Library Exception along with this program;
22// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23// <http://www.gnu.org/licenses/>.
b2dad0e3 24
54c1bf78 25#include <complex>
b2dad0e3 26
12ffa228
BK
27namespace std _GLIBCXX_VISIBILITY(default)
28{
29_GLIBCXX_BEGIN_NAMESPACE_VERSION
3cbc7af0 30
b2dad0e3 31 template
bfe5c121 32 basic_istream<char, char_traits<char> >&
e2c09482 33 operator>>(basic_istream<char, char_traits<char> >&, complex<float>&);
b2dad0e3
BK
34
35 template
bfe5c121 36 basic_ostream<char, char_traits<char> >&
f92ab29f 37 operator<<(basic_ostream<char, char_traits<char> >&,
e2c09482 38 const complex<float>&);
b2dad0e3
BK
39
40 template
bfe5c121 41 basic_istream<char, char_traits<char> >&
e2c09482 42 operator>>(basic_istream<char, char_traits<char> >&, complex<double>&);
b2dad0e3
BK
43
44 template
bfe5c121 45 basic_ostream<char, char_traits<char> >&
f92ab29f 46 operator<<(basic_ostream<char, char_traits<char> >&,
e2c09482 47 const complex<double>&);
b2dad0e3
BK
48
49 template
bfe5c121 50 basic_istream<char, char_traits<char> >&
f92ab29f 51 operator>>(basic_istream<char, char_traits<char> >&,
e2c09482 52 complex<long double>&);
b2dad0e3
BK
53
54 template
bfe5c121 55 basic_ostream<char, char_traits<char> >&
e2c09482 56 operator<<(basic_ostream<char, char_traits<char> >&,
b2dad0e3
BK
57 const complex<long double>&);
58
3d7c150e 59#ifdef _GLIBCXX_USE_WCHAR_T
b2dad0e3 60 template
bfe5c121 61 basic_istream<wchar_t, char_traits<wchar_t> >&
e2c09482 62 operator>>(basic_istream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3
BK
63 complex<float>&);
64
65 template
bfe5c121 66 basic_ostream<wchar_t, char_traits<wchar_t> >&
e2c09482 67 operator<<(basic_ostream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3
BK
68 const complex<float>&);
69
70 template
bfe5c121 71 basic_istream<wchar_t, char_traits<wchar_t> >&
e2c09482 72 operator>>(basic_istream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3
BK
73 complex<double>&);
74
75 template
bfe5c121 76 basic_ostream<wchar_t, char_traits<wchar_t> >&
e2c09482 77 operator<<(basic_ostream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3
BK
78 const complex<double>&);
79
80 template
bfe5c121 81 basic_istream<wchar_t, char_traits<wchar_t> >&
e2c09482 82 operator>>(basic_istream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3
BK
83 complex<long double>&);
84
85 template
bfe5c121 86 basic_ostream<wchar_t, char_traits<wchar_t> >&
e2c09482 87 operator<<(basic_ostream<wchar_t, char_traits<wchar_t> >&,
b2dad0e3 88 const complex<long double>&);
3d7c150e 89#endif //_GLIBCXX_USE_WCHAR_T
3cbc7af0 90
12ffa228
BK
91_GLIBCXX_END_NAMESPACE_VERSION
92} // namespace
6defecc2
JJ
93
94// XXX GLIBCXX_ABI Deprecated
95#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
96
97#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
75c44d22 98 extern "C" void ldbl (...) __attribute__ ((alias (#dbl), weak))
6defecc2
JJ
99
100_GLIBCXX_LDBL_COMPAT (_ZStlsIdcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E,
101 _ZStlsIecSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E);
f7cc5390 102#ifdef _GLIBCXX_USE_WCHAR_T
6defecc2
JJ
103_GLIBCXX_LDBL_COMPAT (_ZStlsIdwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E,
104 _ZStlsIewSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E);
f7cc5390 105#endif
6defecc2
JJ
106_GLIBCXX_LDBL_COMPAT (_ZStrsIdcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E,
107 _ZStrsIecSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E);
f7cc5390 108#ifdef _GLIBCXX_USE_WCHAR_T
6defecc2
JJ
109_GLIBCXX_LDBL_COMPAT (_ZStrsIdwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E,
110 _ZStrsIewSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E);
f7cc5390 111#endif
6defecc2
JJ
112
113#endif // _GLIBCXX_LONG_DOUBLE_COMPAT