1 // Compatibility symbols for previous versions -*- C++ -*-
2 
3 // Copyright (C) 2005-2019 Free Software Foundation, Inc.
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
8 // Free Software Foundation; either version 3, or (at your option)
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 
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/>.
24 
25 /** @file bits/compatibility.h
26  *  This is an internal header file, included by other library sources.
27  *  You should not attempt to use it directly.
28  */
29 
30 // Switch for symbol version macro.
31 #ifndef _GLIBCXX_APPLY_SYMVER
32 #error must define _GLIBCXX_APPLY_SYMVER before including __FILE__
33 #endif
34 
35 /* gcc-3.4.4
36 _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv
37 _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv
38  */
39 namespace
40 {
41 _GLIBCXX_APPLY_SYMVER(_ZNSt21istreambuf_iteratorXXIcSt11char_traitsIcEEppEv,
42 		      _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv)
43 
44 #ifdef _GLIBCXX_USE_WCHAR_T
45 _GLIBCXX_APPLY_SYMVER(_ZNSt21istreambuf_iteratorXXIwSt11char_traitsIwEEppEv,
46 		      _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv)
47 #endif
48 } // anonymous namespace
49 
50 /* gcc-4.0.0
51 _ZNSs4_Rep26_M_set_length_and_sharableEj
52 _ZNSs7_M_copyEPcPKcj
53 _ZNSs7_M_moveEPcPKcj
54 _ZNSs9_M_assignEPcjc
55 _ZNKSs11_M_disjunctEPKc
56 _ZNKSs15_M_check_lengthEjjPKc
57 _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj
58 _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj
59 _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj
60 _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw
61 _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw
62 _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc
63 
64 _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv
65 _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv
66 _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv
67 _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv
68 _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv
69 _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv
70 
71 _ZNSi6ignoreEi
72 _ZNSi6ignoreEv
73 _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi
74 _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv
75 
76 _ZNSt11char_traitsIcE2eqERKcS2_
77 _ZNSt11char_traitsIwE2eqERKwS2_
78  */
79 namespace
80 {
81 _GLIBCXX_APPLY_SYMVER(_ZNSt11char_traitsIcE4eqXXERKcS2_,
82 		      _ZNSt11char_traitsIcE2eqERKcS2_)
83 
84 #ifdef _GLIBCXX_SIZE_T_IS_UINT
85 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_copyXXEPcPKcj,
86 		      _ZNSs7_M_copyEPcPKcj)
87 #else
88 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_copyXXEPcPKcm,
89 		      _ZNSs7_M_copyEPcPKcm)
90 #endif
91 
92 #ifdef _GLIBCXX_SIZE_T_IS_UINT
93 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_moveXXEPcPKcj,
94 		      _ZNSs7_M_moveEPcPKcj)
95 #else
96 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_moveXXEPcPKcm,
97 		      _ZNSs7_M_moveEPcPKcm)
98 #endif
99 
100 #ifdef _GLIBCXX_SIZE_T_IS_UINT
101 _GLIBCXX_APPLY_SYMVER(_ZNSs11_M_assignXXEPcjc,
102 		      _ZNSs9_M_assignEPcjc)
103 #else
104 _GLIBCXX_APPLY_SYMVER(_ZNSs11_M_assignXXEPcmc,
105 		      _ZNSs9_M_assignEPcmc)
106 #endif
107 
108 _GLIBCXX_APPLY_SYMVER(_ZNKSs13_M_disjunctXXEPKc,
109 		      _ZNKSs11_M_disjunctEPKc)
110 
111 #ifdef _GLIBCXX_SIZE_T_IS_UINT
112 _GLIBCXX_APPLY_SYMVER(_ZNKSs17_M_check_lengthXXEjjPKc,
113 		      _ZNKSs15_M_check_lengthEjjPKc)
114 #else
115 _GLIBCXX_APPLY_SYMVER(_ZNKSs17_M_check_lengthXXEmmPKc,
116 		      _ZNKSs15_M_check_lengthEmmPKc)
117 #endif
118 
119 #ifdef _GLIBCXX_SIZE_T_IS_UINT
120   _GLIBCXX_APPLY_SYMVER(_ZNSs4_Rep28_M_set_length_and_sharableXXEj,
121 			_ZNSs4_Rep26_M_set_length_and_sharableEj)
122 #else
123   _GLIBCXX_APPLY_SYMVER(_ZNSs4_Rep28_M_set_length_and_sharableXXEm,
124 			_ZNSs4_Rep26_M_set_length_and_sharableEm)
125 #endif
126 
127 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEv, _ZNSi6ignoreEv)
128 
129 #ifdef _GLIBCXX_PTRDIFF_T_IS_INT
130 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEi, _ZNSi6ignoreEi)
131 #else
132 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEl, _ZNSi6ignoreEl)
133 #endif
134 
135 _GLIBCXX_APPLY_SYMVER(_ZNKSt15basic_fstreamXXIcSt11char_traitsIcEE7is_openEv,
136 		      _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv)
137 
138 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ifstreamXXIcSt11char_traitsIcEE7is_openEv,
139 		      _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv)
140 
141 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ofstreamXXIcSt11char_traitsIcEE7is_openEv,
142 		      _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv)
143 
144   // Support for wchar_t.
145 #ifdef _GLIBCXX_USE_WCHAR_T
146 _GLIBCXX_APPLY_SYMVER(_ZNSt11char_traitsIwE4eqXXERKwS2_,
147 		      _ZNSt11char_traitsIwE2eqERKwS2_)
148 
149 #ifdef _GLIBCXX_SIZE_T_IS_UINT
150 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_copyXXEPwPKwj,
151 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj)
152 #else
153   _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_copyXXEPwPKwm,
154 			_ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm)
155 #endif
156 
157 #ifdef _GLIBCXX_SIZE_T_IS_UINT
158 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_moveXXEPwPKwj,
159 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj)
160 #else
161 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_moveXXEPwPKwm,
162 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm)
163 #endif
164 
165 #ifdef _GLIBCXX_SIZE_T_IS_UINT
166 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE11_M_assignXXEPwjw,
167 		      _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw)
168 #else
169 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE11_M_assignXXEPwmw,
170 		      _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw)
171 #endif
172 
173 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE13_M_disjunctXXEPKw,
174 		      _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw)
175 
176 #ifdef _GLIBCXX_SIZE_T_IS_UINT
177 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE17_M_check_lengthXXEjjPKc,
178 		      _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc)
179 #else
180 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE17_M_check_lengthXXEmmPKc,
181 		      _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc)
182 #endif
183 
184 #ifdef _GLIBCXX_SIZE_T_IS_UINT
185 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE4_Rep28_M_set_length_and_sharableXXEj,
186 		      _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj)
187 #else
188 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE4_Rep28_M_set_length_and_sharableXXEm,
189 		      _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm)
190 #endif
191 
192 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEv,
193 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv)
194 
195 #ifdef _GLIBCXX_PTRDIFF_T_IS_INT
196 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEi,
197 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi)
198 #else
199 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEl,
200 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEl)
201 #endif
202 
203 _GLIBCXX_APPLY_SYMVER(_ZNKSt15basic_fstreamXXIwSt11char_traitsIwEE7is_openEv,
204 		      _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv)
205 
206 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ifstreamXXIwSt11char_traitsIwEE7is_openEv,
207 		      _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv)
208 
209 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ofstreamXXIwSt11char_traitsIwEE7is_openEv,
210 		      _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv)
211 #endif
212   } // anonymous namespace
213 
214