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