1 // Compatibility symbols for previous versions -*- C++ -*-
2 
3 // Copyright (C) 2005, 2006
4 // Free Software Foundation, Inc.
5 //
6 // This file is part of the GNU ISO C++ Library.  This library is free
7 // software; you can redistribute it and/or modify it under the
8 // terms of the GNU General Public License as published by the
9 // Free Software Foundation; either version 2, or (at your option)
10 // any later version.
11 
12 // This library is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 // GNU General Public License for more details.
16 
17 // You should have received a copy of the GNU General Public License along
18 // with this library; see the file COPYING.  If not, write to the Free
19 // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20 // USA.
21 
22 // As a special exception, you may use this file as part of a free software
23 // library without restriction.  Specifically, if other files instantiate
24 // templates or use macros or inline functions from this file, or you compile
25 // this file and link it with other files to produce an executable, this
26 // file does not by itself cause the resulting executable to be covered by
27 // the GNU General Public License.  This exception does not however
28 // invalidate any other reasons why the executable file might be covered by
29 // the GNU General Public License.
30 
31 /** @file compatibility.h
32  *  This is an internal header file, included by other library sources.
33  *  You should not attempt to use it directly.
34  */
35 
36 // Switch for symbol version macro.
37 #ifndef _GLIBCXX_APPLY_SYMVER
38 #error must define _GLIBCXX_APPLY_SYMVER before including __FILE__
39 #endif
40 
41 /* gcc-3.4.4
42 _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv
43 _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv
44  */
45 namespace
46 {
47 _GLIBCXX_APPLY_SYMVER(_ZNSt21istreambuf_iteratorXXIcSt11char_traitsIcEEppEv,
48 		      _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv)
49 
50 #ifdef _GLIBCXX_USE_WCHAR_T
51 _GLIBCXX_APPLY_SYMVER(_ZNSt21istreambuf_iteratorXXIwSt11char_traitsIwEEppEv,
52 		      _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv)
53 #endif
54 } // anonymous namespace
55 
56 /* gcc-4.0.0
57 _ZNSs4_Rep26_M_set_length_and_sharableEj
58 _ZNSs7_M_copyEPcPKcj
59 _ZNSs7_M_moveEPcPKcj
60 _ZNSs9_M_assignEPcjc
61 _ZNKSs11_M_disjunctEPKc
62 _ZNKSs15_M_check_lengthEjjPKc
63 _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj
64 _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj
65 _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj
66 _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw
67 _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw
68 _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc
69 
70 _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv
71 _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv
72 _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv
73 _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv
74 _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv
75 _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv
76 
77 _ZNSi6ignoreEi
78 _ZNSi6ignoreEv
79 _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi
80 _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv
81 
82 _ZNSt11char_traitsIcE2eqERKcS2_
83 _ZNSt11char_traitsIwE2eqERKwS2_
84  */
85 namespace
86 {
87 _GLIBCXX_APPLY_SYMVER(_ZNSt11char_traitsIcE4eqXXERKcS2_,
88 		      _ZNSt11char_traitsIcE2eqERKcS2_)
89 
90 #ifdef _GLIBCXX_SIZE_T_IS_UINT
91 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_copyXXEPcPKcj,
92 		      _ZNSs7_M_copyEPcPKcj)
93 #else
94 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_copyXXEPcPKcm,
95 		      _ZNSs7_M_copyEPcPKcm)
96 #endif
97 
98 #ifdef _GLIBCXX_SIZE_T_IS_UINT
99 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_moveXXEPcPKcj,
100 		      _ZNSs7_M_moveEPcPKcj)
101 #else
102 _GLIBCXX_APPLY_SYMVER(_ZNSs9_M_moveXXEPcPKcm,
103 		      _ZNSs7_M_moveEPcPKcm)
104 #endif
105 
106 #ifdef _GLIBCXX_SIZE_T_IS_UINT
107 _GLIBCXX_APPLY_SYMVER(_ZNSs11_M_assignXXEPcjc,
108 		      _ZNSs9_M_assignEPcjc)
109 #else
110 _GLIBCXX_APPLY_SYMVER(_ZNSs11_M_assignXXEPcmc,
111 		      _ZNSs9_M_assignEPcmc)
112 #endif
113 
114 _GLIBCXX_APPLY_SYMVER(_ZNKSs13_M_disjunctXXEPKc,
115 		      _ZNKSs11_M_disjunctEPKc)
116 
117 #ifdef _GLIBCXX_SIZE_T_IS_UINT
118 _GLIBCXX_APPLY_SYMVER(_ZNKSs17_M_check_lengthXXEjjPKc,
119 		      _ZNKSs15_M_check_lengthEjjPKc)
120 #else
121 _GLIBCXX_APPLY_SYMVER(_ZNKSs17_M_check_lengthXXEmmPKc,
122 		      _ZNKSs15_M_check_lengthEmmPKc)
123 #endif
124 
125 #ifdef _GLIBCXX_SIZE_T_IS_UINT
126   _GLIBCXX_APPLY_SYMVER(_ZNSs4_Rep28_M_set_length_and_sharableXXEj,
127 			_ZNSs4_Rep26_M_set_length_and_sharableEj)
128 #else
129   _GLIBCXX_APPLY_SYMVER(_ZNSs4_Rep28_M_set_length_and_sharableXXEm,
130 			_ZNSs4_Rep26_M_set_length_and_sharableEm)
131 #endif
132 
133 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEv, _ZNSi6ignoreEv)
134 
135 #ifdef _GLIBCXX_PTRDIFF_T_IS_INT
136 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEi, _ZNSi6ignoreEi)
137 #else
138 _GLIBCXX_APPLY_SYMVER(_ZNSi8ignoreXXEl, _ZNSi6ignoreEl)
139 #endif
140 
141 _GLIBCXX_APPLY_SYMVER(_ZNKSt15basic_fstreamXXIcSt11char_traitsIcEE7is_openEv,
142 		      _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv)
143 
144 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ifstreamXXIcSt11char_traitsIcEE7is_openEv,
145 		      _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv)
146 
147 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ofstreamXXIcSt11char_traitsIcEE7is_openEv,
148 		      _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv)
149 
150   // Support for wchar_t.
151 #ifdef _GLIBCXX_USE_WCHAR_T
152 _GLIBCXX_APPLY_SYMVER(_ZNSt11char_traitsIwE4eqXXERKwS2_,
153 		      _ZNSt11char_traitsIwE2eqERKwS2_)
154 
155 #ifdef _GLIBCXX_SIZE_T_IS_UINT
156 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_copyXXEPwPKwj,
157 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj)
158 #else
159   _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_copyXXEPwPKwm,
160 			_ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm)
161 #endif
162 
163 #ifdef _GLIBCXX_SIZE_T_IS_UINT
164 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_moveXXEPwPKwj,
165 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj)
166 #else
167 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE9_M_moveXXEPwPKwm,
168 		      _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm)
169 #endif
170 
171 #ifdef _GLIBCXX_SIZE_T_IS_UINT
172 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE11_M_assignXXEPwjw,
173 		      _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw)
174 #else
175 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE11_M_assignXXEPwmw,
176 		      _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw)
177 #endif
178 
179 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE13_M_disjunctXXEPKw,
180 		      _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw)
181 
182 #ifdef _GLIBCXX_SIZE_T_IS_UINT
183 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE17_M_check_lengthXXEjjPKc,
184 		      _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc)
185 #else
186 _GLIBCXX_APPLY_SYMVER(_ZNKSbIwSt11char_traitsIwESaIwEE17_M_check_lengthXXEmmPKc,
187 		      _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc)
188 #endif
189 
190 #ifdef _GLIBCXX_SIZE_T_IS_UINT
191 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE4_Rep28_M_set_length_and_sharableXXEj,
192 		      _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj)
193 #else
194 _GLIBCXX_APPLY_SYMVER(_ZNSbIwSt11char_traitsIwESaIwEE4_Rep28_M_set_length_and_sharableXXEm,
195 		      _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm)
196 #endif
197 
198 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEv,
199 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv)
200 
201 #ifdef _GLIBCXX_PTRDIFF_T_IS_INT
202 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEi,
203 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi)
204 #else
205 _GLIBCXX_APPLY_SYMVER(_ZNSt13basic_istreamIwSt11char_traitsIwEE8ignoreXXEl,
206 		      _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEl)
207 #endif
208 
209 _GLIBCXX_APPLY_SYMVER(_ZNKSt15basic_fstreamXXIwSt11char_traitsIwEE7is_openEv,
210 		      _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv)
211 
212 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ifstreamXXIwSt11char_traitsIwEE7is_openEv,
213 		      _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv)
214 
215 _GLIBCXX_APPLY_SYMVER(_ZNKSt16basic_ofstreamXXIwSt11char_traitsIwEE7is_openEv,
216 		      _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv)
217 #endif
218   } // anonymous namespace
219 
220