OSDN Git Service

2006-11-11 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / config / abi / pre / gnu.ver
1 ## Linker script for GNU versioning (GNU ld 2.13.91+ only.)
2 ##
3 ## Copyright (C) 2002, 2003, 2004, 2005, 2006 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 2, 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 ## You should have received a copy of the GNU General Public License along
17 ## with this library; see the file COPYING.  If not, write to the Free
18 ## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
19 ## USA.
20
21 GLIBCXX_3.4 {
22
23   global:
24
25     # Names inside the 'extern' block are demangled names.
26     extern "C++"
27     {
28       std::[A-Za]*;
29       std::ba[a-r]*;
30       std::basic_[a-e]*;
31       std::basic_f[a-r]*;
32 #     std::basic_fstream;
33       std::basic_f[t-z]*;
34       std::basic_[g-h]*;
35       std::basic_i[a-e]*;
36 #     std::basic_ifstream;
37       std::basic_i[g-r]*;
38       std::basic_istr[a-d]*;
39 #     std::basic_istream;
40       std::basic_istr[f-z]*;
41       std::basic_i[t-z]*;
42       std::basic_[j-n]*;
43       std::basic_o[a-e]*;
44 #     std::basic_ofstream;
45 #     std::basic_o[g-z]*;
46       std::basic_o[g-r]*;
47       std::basic_ostr[a-d]*;
48       std::basic_ostr[f-z]*;
49       std::basic_[p-r]*;
50       std::basic_streambuf*;
51 #     std::basic_string
52 #     std::basic_stringbuf
53       std::basic_stringstream*;
54       std::basic_[t-z]*;
55       std::ba[t-z]*;
56       std::b[b-z]*;
57       std::c[a-g]*;
58 #     std::char_traits;
59       std::c[i-z]*;
60       std::[d-h]*;
61       std::i[a-n]*;
62       std::ios_base::[A-Ha-z]*;
63       std::ios_base::_M_grow_words*;
64       std::ios_base::_M_init*;
65       std::ios_base::Init::[A-Za-z]*;
66       std::ios_base::[J-Za-z]*;
67       std::i[p-r]*;
68 #     std::istream
69 #     std::istreambuf_iterator
70       std::istringstream*;
71       std::istrstream*;
72       std::i[t-z]*;
73       std::[A-Zj-k]*;
74       std::length_error*;
75       std::logic_error*;
76       std::locale::[A-Za-e]*;
77       std::locale::facet::[A-Za-z]*;
78       std::locale::facet::_S_get_c_locale*;     
79       std::locale::facet::_S_clone_c_locale*;
80       std::locale::facet::_S_create_c_locale*;
81       std::locale::facet::_S_destroy_c_locale*;
82       std::locale::[A-Zg-h]*;
83       std::locale::id::[A-Za-z]*;
84       std::locale::id::_M_id*;
85       std::locale::[A-Zj-z]*;
86       std::locale::_[A-Ha-z]*;
87       std::locale::_Impl::[A-Za-z]*;
88 #     std::locale::_Impl::_M_[A-Za-z]*;
89       std::locale::_[J-Ra-z]*;
90       std::locale::_S_normalize_category*;
91       std::locale::_[T-Za-z]*;
92 #     std::[A-Zm-r]*;
93       std::[A-Zm]*;
94       std::n[^u]*;
95       std::nu[^m]*;
96       std::num[^e]*;
97       std::[p-r]*;
98       std::ostrstream*;
99       std::out_of_range*;
100       std::overflow_error*;
101       std::set_new_handler*;
102       std::set_terminate*;
103       std::set_unexpected*;
104 #     std::string
105       std::strstream*;
106       std::strstreambuf*;
107       std::[A-Zt-z]*;
108       std::_List_node_base::hook*;
109       std::_List_node_base::swap*;
110       std::_List_node_base::unhook*;
111       std::_List_node_base::reverse*;
112       std::_List_node_base::transfer*;
113       std::__throw_*;
114       std::__timepunct*;
115       std::__numeric_limits_base*;
116       std::__num_base::_S_format_float*;
117       std::__num_base::_S_format_int*;
118       std::__num_base::_S_atoms_in;
119       std::__num_base::_S_atoms_out;
120       std::__moneypunct_cache*;
121       std::__numpunct_cache*;
122       std::__timepunct_cache*;
123       __gnu_debug::_Error_formatter*
124     };
125
126     # Names not in an 'extern' block are mangled names.
127
128     # __gnu_debug::_Safe_sequence_base and _Safe_iterator_base
129     _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
130     _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
131     _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
132     _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
133     _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
134     _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
135     _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
136     _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
137
138     # std::string
139     _ZNSsC*;
140     _ZNSsD*;
141     _ZNSs[0-9][a-z]*;
142     _ZNSs12_Alloc_hiderC*;
143     _ZNSs12_M_leak_hardEv;
144     _ZNSs12_S_constructE[jm]cRKSaIcE;
145     _ZNSs12_S_empty_repEv;
146     _ZNSs13_S_copy_chars*;
147     _ZNSs[0-9][0-9]_M_replace*;
148     _ZNSs4_Rep10_M_destroy*;
149     _ZNSs4_Rep10_M_dispose*;
150     _ZNSs4_Rep10_M_refcopyEv;
151     _ZNSs4_Rep10_M_refdataEv;
152     _ZNSs4_Rep12_S_empty_repEv;
153     _ZNSs4_Rep13_M_set_leakedEv;
154     _ZNSs4_Rep15_M_set_sharableEv;
155     _ZNSs4_Rep7_M_grab*;
156     _ZNSs4_Rep8_M_clone*;
157     _ZNSs4_Rep9_S_createE[jm][jm]*;
158     _ZNSs7_M_dataEPc;
159     _ZNSs7_M_leakEv;
160     _ZNSs9_M_mutateE[jm][jm][jm];
161     _ZNSs4_Rep20_S_empty_rep_storageE;
162     _ZNSs4_Rep11_S_max_sizeE;
163     _ZNSs4_Rep11_S_terminalE;
164     _ZNSsaSE*;
165     _ZNSsixE*;
166     _ZNSspLE*;
167     _ZNKSs[0-9][a-z]*;
168     _ZNKSs[0-9][0-9][a-z]*;
169     _ZNKSs[a-z]*;
170     _ZNKSs4_Rep12_M_is_leakedEv;
171     _ZNKSs4_Rep12_M_is_sharedEv;
172     _ZNKSs6_M_repEv;
173     _ZNKSs7_M_dataEv;
174     _ZNKSs7_M_iendEv;
175     _ZNKSs8_M_check*;
176     _ZNKSs8_M_limit*;
177     _ZNKSs9_M_ibeginEv;
178     _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_E*;
179
180     # std::wstring
181     _ZNSbIwSt11char_traitsIwESaIwEEC*;
182     _ZNSbIwSt11char_traitsIwESaIwEED*;
183     _ZNSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
184     _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC*;
185     _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv;
186     _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructE[jm]wRKS1_;
187     _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv;
188     _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_chars*;
189     _ZNSbIwSt11char_traitsIwESaIwEE[0-9][0-9]_M_replace*;
190     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroy*;
191     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_dispose*;
192     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv;
193     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv;
194     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv;
195     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv;
196     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv;
197     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grab*;
198     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_clone*;
199     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createE[jm][jm]*;
200     _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw;
201     _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv;
202     _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateE[jm][jm][jm];
203     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE;
204     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE;
205     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE;
206     _ZNSbIwSt11char_traitsIwESaIwEEaSE*;
207     _ZNSbIwSt11char_traitsIwESaIwEEixE*;
208     _ZNSbIwSt11char_traitsIwESaIwEEpLE*;
209     _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][a-z]*;
210     _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][0-9][a-z]*;
211     _ZNKSbIwSt11char_traitsIwESaIwEE[a-z]*;
212     _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv;
213     _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv;
214     _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv;
215     _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv;
216     _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv;
217     _ZNKSbIwSt11char_traitsIwESaIwEE8_M_check*;
218     _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limit*;
219     _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv;
220     _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_E*;
221
222     # std::basic_stringbuf
223     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[CD]*;
224     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][a-r]*;
225     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]seek*;
226     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]set*;
227     _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
228     _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
229     _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs;
230     _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E;
231     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][t-z]*;
232     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[a-z]*;
233     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][0-9]_M_[a-z]*;
234
235
236     # std::basic_iostream constructors, destructors
237     _ZNSdC*;
238     _ZNSdD*;
239
240     # std::basic_fstream
241     _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC*;
242     _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EED*;
243     _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5closeEv;
244     _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
245     _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4open*;
246     _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
247
248     # std::basic_ifstream
249     _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC*;
250     _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EED*;
251     _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5closeEv;
252     _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
253     _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4open*;
254     _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
255
256     # std::basic_ofstream
257     _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC*;
258     _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EED*;
259     _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5closeEv;
260     _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
261     _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4open*;
262     _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
263
264     # std::basic_istream<char>
265     _ZNSiC*;
266     _ZNSiD*;
267     _ZNKSi[0-9][a-z]*;
268     _ZNSi[0-9][a-h]*;
269     _ZNSi[0-9][j-z]*;
270     _ZNSi6ignoreE[il][il];
271     _ZNSirsE*[^g];
272
273     # std::basic_istream<wchar_t>
274     _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
275     _ZNSt13basic_istreamIwSt11char_traitsIwEED*;
276     _ZNKSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-z]*;
277     _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
278     _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
279     _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][ijlm];
280     _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*[^g];
281
282     # std::istream operators and extractors
283     _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
284     _ZSt2wsI[cw]St11char_traitsI[cw]EE*;
285     _ZStrsI[cw]St11char_traitsI[cw]EERSt13basic_istream*;
286     _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
287     _ZStrsISt11char_traitsI[cw]EERSt13basic_istream*;
288     _ZStrsId[cw]St11char_traitsI[cw]EERSt13basic_istream*;
289     _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
290     _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
291
292     # std::basic_ostream<char>
293     _ZNSoC*;
294     _ZNSoD*;
295     _ZNKSo6sentrycvbEv;
296     _ZNSo8_M_writeEPKc[il];
297     _ZNSo[0-9][a-z]*;
298     _ZNSolsE*[^g];
299
300     # std::basic_ostream<wchar_t>
301     _ZNSt13basic_ostreamIwSt11char_traitsIwEEC*;
302     _ZNSt13basic_ostreamIwSt11char_traitsIwEED*;
303     _ZNKSt13basic_ostreamIwSt11char_traitsIwEE[0-9][a-z]*;
304     _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw;
305     _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv;
306     _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpE*;
307     _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv;
308     _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKw*;
309     _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentry*;
310     _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKw[il];
311     _ZNSt13basic_ostreamIwSt11char_traitsIwEElsE*[^g];
312
313     # std::ostream operators and inserters
314     _ZSt4end[ls]I[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
315     _ZSt5flushI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
316     _ZStlsI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
317     _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostream*;
318     _ZStlsISt11char_traitsI[cw]EERSt13basic_ostream*;
319     _ZStlsId[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
320     _ZStlsIe[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
321     _ZStlsIf[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
322
323     # std::locale destructors
324     _ZNSt6localeD*;
325         
326     # std::locale::facet destructors
327     _ZNSt6locale5facetD*;
328          
329     # std::locale::_Impl constructors, destructors
330     _ZNSt6locale5_ImplC*;
331     _ZNSt6locale5_ImplD*;
332
333     # std::ios_base, std::ios_base::Init destructors
334     _ZNSt8ios_baseD*;
335     _ZNSt8ios_base4InitD*;
336
337     # bool std::has_facet 
338     _ZSt9has_facetIS*;
339
340     # std::num_get
341     _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
342
343     # std::num_put
344     _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
345
346     # std::money_get
347     _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
348
349     # std::money_put
350     _ZNKSt9money_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
351
352     # std::numeric_limits
353     _ZNSt14numeric_limitsI[^g]*;
354
355     # std::_Rb_tree
356     _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
357     _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
358     _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
359     _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
360     _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
361     _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
362     _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
363     _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
364     _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
365
366     # std::__basic_file
367     _ZNKSt12__basic_fileIcE7is_openEv;
368     _ZNSt12__basic_fileIcE2fdEv;
369     _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei;
370     _ZNSt12__basic_fileIcE4syncEv;
371     _ZNSt12__basic_fileIcE5closeEv;
372     _ZNSt12__basic_fileIcE6xsgetn*;
373     _ZNSt12__basic_fileIcE6xsputn*;
374     _ZNSt12__basic_fileIcE7seekoff*;
375     _ZNSt12__basic_fileIcE8sys_openE*St13_Ios_Openmode;
376     _ZNSt12__basic_fileIcE8xsputn_2*;
377     _ZNSt12__basic_fileIcE9showmanycEv;
378     _ZNSt12__basic_fileIcEC*;
379     _ZNSt12__basic_fileIcED*;
380
381     # std::__convert_to_v
382     _ZSt14__convert_to_vI[^g]*;
383
384     # __gnu_cxx::stdio_sync_filebuf
385     _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
386
387     # __gnu_cxx::__atomic_add
388     # __gnu_cxx::__exchange_and_add
389     _ZN9__gnu_cxx12__atomic_addEPV[il]i;
390     _ZN9__gnu_cxx18__exchange_and_addEPV[il]i;
391
392     # debug mode
393     _ZN10__gnu_norm15_List_node_base4hook*;
394     _ZN10__gnu_norm15_List_node_base4swap*;
395     _ZN10__gnu_norm15_List_node_base6unhookEv;
396     _ZN10__gnu_norm15_List_node_base7reverseEv;
397     _ZN10__gnu_norm15_List_node_base8transfer*;
398
399     # operator new(size_t)
400     _Znw[jm];
401     # operator new(size_t, std::nothrow_t const&)
402     _Znw[jm]RKSt9nothrow_t;
403
404     # operator delete(void*)
405     _ZdlPv;
406     # operator delete(void*, std::nothrow_t const&)
407     _ZdlPvRKSt9nothrow_t;
408
409     # operator new[](size_t)
410     _Zna[jm];
411     # operator new[](size_t, std::nothrow_t const&)
412     _Zna[jm]RKSt9nothrow_t;
413
414     # operator delete[](void*)
415     _ZdaPv;
416     # operator delete[](void*, std::nothrow_t const&)
417     _ZdaPvRKSt9nothrow_t;
418
419     # virtual table
420     _ZTVNSt8ios_base7failureE;
421     _ZTVNSt6locale5facetE;
422     _ZTVS[a-z];
423     _ZTVSt[0-9][A-Za-z]*;
424     _ZTVSt[0-9][0-9][A-Za-z]*;
425     _ZTVSt11__timepunctI[cw]E;
426     _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
427     _ZTVSt21__ctype_abstract_baseI[cw]E;
428
429     # VTT structure
430     _ZTTS[a-z];
431     _ZTTSt[0-9][A-Za-z]*;
432     _ZTTSt[0-9][0-9][A-Za-z]*;
433
434     # typeinfo structure
435     _ZTIS[a-z];
436     _ZTINSt8ios_base7failureE;
437     _ZTINSt6locale5facetE;
438     _ZTISt[0-9][A-Za-z]*;
439     _ZTISt[0-9][0-9][A-Za-z]*;
440     _ZTISt11__timepunctI[cw]E;
441     _ZTISt10__num_base;
442     _ZTISt21__ctype_abstract_baseI[cw]E;
443     _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
444     _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
445     _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
446
447     # typeinfo name
448     _ZTSNSt8ios_base7failureE;
449     _ZTSNSt6locale5facetE;
450     _ZTSS[a-z];
451     _ZTSSt[0-9][A-Za-z]*;
452     _ZTSSt[0-9][0-9][A-Za-z]*;
453     _ZTSSt11__timepunctI[cw]E;
454     _ZTSSt10__num_base;
455     _ZTSSt21__ctype_abstract_baseI[cw]E;
456     _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
457     _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
458     _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
459
460     # function-scope static objects requires a guard variable.
461     _ZGVNSt[^1]*;
462     _ZGVNSt1[^7]*;
463
464     # virtual function thunks
465     _ZThn8_NS*;
466     _ZThn16_NS*;
467     _ZTv0_n12_NS*;
468     _ZTv0_n24_NS*;
469
470     # stub functions from libmath
471     sinf;
472     sinl;
473     sinhf;
474     sinhl;
475     cosf;
476     cosl;
477     coshf;
478     coshl;
479     tanf;
480     tanl;
481     tanhf;
482     tanhl;
483     atan2f;
484     atan2l;
485     expf;
486     expl;
487     hypotf;
488     hypotl;
489     hypot;
490     logf;
491     logl;
492     log10f;
493     log10l;
494     powf;
495     powl;
496     sqrtf;
497     sqrtl;
498     copysignf;
499     __signbit;
500     __signbitf;
501     __signbitl;
502
503    # GLIBCXX_ABI compatibility only.
504     # std::string
505     _ZNKSs11_M_disjunctEPKc;
506     _ZNKSs15_M_check_lengthE[jm][jm]PKc;
507     _ZNSs4_Rep26_M_set_length_and_sharableE*;
508     _ZNSs7_M_copyEPcPKc[jm];
509     _ZNSs7_M_moveEPcPKc[jm];
510     _ZNSs9_M_assignEPc[jm]c;
511
512     # std::wstring
513     _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
514     _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
515     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
516     _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
517     _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
518     _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
519
520     _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
521     _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
522     _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
523
524     _ZNSi6ignoreE[ilv];
525     _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
526
527     _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
528
529     _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
530
531     # std::locale::Impl _M_ members
532     _ZNSt6locale5_Impl16_M_install_facetEPKNS_2idEPKNS_5facetE;
533     _ZNSt6locale5_Impl16_M_replace_facetEPKS0_PKNS_2idE;
534     _ZNSt6locale5_Impl19_M_replace_categoryEPKS0_PKPKNS_2idE;
535     _ZNSt6locale5_Impl21_M_replace_categoriesEPKS0_i;
536
537   # DO NOT DELETE THIS LINE.  Port-specific symbols, if any, will be here.
538
539   local:
540     *;
541 };
542
543 GLIBCXX_3.4.1 {
544  
545     _ZNSt12__basic_fileIcE4fileEv;
546  
547 } GLIBCXX_3.4;
548  
549 GLIBCXX_3.4.2 {
550
551     _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv;
552
553     _ZN9__gnu_cxx17__pool_alloc_base9_M_refillE[jm];
554     _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listE[jm];
555     _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv;
556
557 } GLIBCXX_3.4.1;
558
559 GLIBCXX_3.4.3 {
560  
561     # stub functions from libmath
562     acosf;
563     acosl;
564     asinf;
565     asinl;
566     atanf;
567     atanl;
568     ceilf;
569     ceill;
570     floorf;
571     floorl;
572     fmodf;
573     fmodl;
574     frexpf;
575     frexpl;
576     ldexpf;
577     ldexpl;
578     modff;
579     modfl;
580
581 } GLIBCXX_3.4.2;
582
583 GLIBCXX_3.4.4 {
584
585     _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv;
586     _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE;
587     _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv;
588     _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv;
589     _ZN9__gnu_cxx6__poolILb[01]EE16_M_reserve_blockE[jm][jm];
590     _ZN9__gnu_cxx6__poolILb[01]EE16_M_reclaim_blockEPc[jm];
591     _ZN9__gnu_cxx6__poolILb[01]EE10_M_destroyEv;
592
593     _ZN9__gnu_cxx9free_list6_M_getE*;
594     _ZN9__gnu_cxx9free_list8_M_clearEv;
595
596 } GLIBCXX_3.4.3;
597
598 GLIBCXX_3.4.5 {
599
600     # std::string
601     _ZNKSs11_M_disjunctEPKc;
602     _ZNKSs15_M_check_lengthE[jm][jm]PKc;
603     _ZNSs4_Rep26_M_set_length_and_sharableE*;
604     _ZNSs7_M_copyEPcPKc[jm];
605     _ZNSs7_M_moveEPcPKc[jm];
606     _ZNSs9_M_assignEPc[jm]c;
607
608     # std::wstring
609     _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
610     _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jm][jm]PKc;
611     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
612     _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jm];
613     _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jm];
614     _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jm]w;
615
616     _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
617     _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
618     _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
619
620     _ZNSi6ignoreE[ilv];
621     _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilv];
622
623     _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
624
625     _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
626
627 } GLIBCXX_3.4.4;
628
629 GLIBCXX_3.4.6 {
630
631     _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EEiPSt15basic_streambuf*;
632     _ZNSt8ios_base17_M_call_callbacksENS_5eventE;
633     _ZNSt8ios_base20_M_dispose_callbacksEv;
634     _ZNSt6locale5facet13_S_get_c_nameEv;
635
636     _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
637
638     _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
639
640     _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv;
641
642 } GLIBCXX_3.4.5;
643
644 GLIBCXX_3.4.7 {
645
646     _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetE[jm];
647
648 } GLIBCXX_3.4.6;
649
650 GLIBCXX_3.4.8 {
651
652     _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EElPSt15basic_streambuf*;
653
654 } GLIBCXX_3.4.7;
655
656 GLIBCXX_3.4.9 {
657
658     _ZNSt6__norm15_List_node_base4hook*;
659     _ZNSt6__norm15_List_node_base4swap*;
660     _ZNSt6__norm15_List_node_base6unhookEv;
661     _ZNSt6__norm15_List_node_base7reverseEv;
662     _ZNSt6__norm15_List_node_base8transfer*;
663
664     _ZNSo9_M_insertI[^g]*;
665     _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertI[^g]*;
666     _ZNSi10_M_extractI[^g]*;
667     _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractI[^g]*;
668
669     _ZSt21__copy_streambufs_eofI[cw]St11char_traitsI[cw]EE[il]PSt15basic_streambuf*;
670
671     _ZNSo9_M_insertEPKc[il];
672     _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertEPKw[il];
673
674 } GLIBCXX_3.4.8;
675
676 GLIBCXX_3.4.10 {
677
678     _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
679     _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb;
680     _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
681     _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
682
683 } GLIBCXX_3.4.9;
684
685 # Symbols in the support library (libsupc++) have their own tag.
686 CXXABI_1.3 {
687
688   global:
689     __cxa_allocate_exception;
690     __cxa_bad_cast;
691     __cxa_bad_typeid;
692     __cxa_begin_catch;
693     __cxa_begin_cleanup;
694     __cxa_call_unexpected;
695     __cxa_current_exception_type;
696     __cxa_demangle;
697     __cxa_end_catch;
698     __cxa_end_cleanup;
699     __cxa_free_exception;
700     __cxa_get_globals;
701     __cxa_get_globals_fast;
702     __cxa_guard_abort;
703     __cxa_guard_acquire;
704     __cxa_guard_release;
705     __cxa_pure_virtual;
706     __cxa_rethrow;
707     __cxa_throw;
708     __cxa_type_match;
709     __cxa_vec_cctor;
710     __cxa_vec_cleanup;
711     __cxa_vec_ctor;
712     __cxa_vec_delete2;
713     __cxa_vec_delete3;
714     __cxa_vec_delete;
715     __cxa_vec_dtor;
716     __cxa_vec_new2;
717     __cxa_vec_new3;
718     __cxa_vec_new;
719     __gxx_personality_v0;
720     __gxx_personality_sj0;
721     __dynamic_cast;
722
723     # *_type_info classes, ctor and dtor
724     _ZN10__cxxabiv117__array_type_info*;
725     _ZN10__cxxabiv117__class_type_info*;
726     _ZN10__cxxabiv116__enum_type_info*;
727     _ZN10__cxxabiv120__function_type_info*;
728     _ZN10__cxxabiv123__fundamental_type_info*;
729     _ZN10__cxxabiv117__pbase_type_info*;
730     _ZN10__cxxabiv129__pointer_to_member_type_info*;
731     _ZN10__cxxabiv119__pointer_type_info*;
732     _ZN10__cxxabiv120__si_class_type_info*;
733     _ZN10__cxxabiv121__vmi_class_type_info*;
734
735     # *_type_info classes, member functions
736     _ZNK10__cxxabiv117__class_type_info*;
737     _ZNK10__cxxabiv120__function_type_info*;
738     _ZNK10__cxxabiv117__pbase_type_info*;
739     _ZNK10__cxxabiv129__pointer_to_member_type_info*;
740     _ZNK10__cxxabiv119__pointer_type_info*;
741     _ZNK10__cxxabiv120__si_class_type_info*;
742     _ZNK10__cxxabiv121__vmi_class_type_info*;
743
744     # virtual table
745     _ZTVN10__cxxabiv117__array_type_infoE;
746     _ZTVN10__cxxabiv117__class_type_infoE;
747     _ZTVN10__cxxabiv116__enum_type_infoE;
748     _ZTVN10__cxxabiv120__function_type_infoE;
749     _ZTVN10__cxxabiv123__fundamental_type_infoE;
750     _ZTVN10__cxxabiv117__pbase_type_infoE;
751     _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
752     _ZTVN10__cxxabiv119__pointer_type_infoE;
753     _ZTVN10__cxxabiv120__si_class_type_infoE;
754     _ZTVN10__cxxabiv121__vmi_class_type_infoE;
755
756     # typeinfo structure (and some names)
757     _ZTI[a-fh-z];
758     _ZTIP[a-fh-z];
759     _ZTIPK[a-fh-z];
760     _ZTIN10__cxxabiv117__array_type_infoE;
761     _ZTIN10__cxxabiv117__class_type_infoE;
762     _ZTIN10__cxxabiv116__enum_type_infoE;
763     _ZTIN10__cxxabiv120__function_type_infoE;
764     _ZTIN10__cxxabiv123__fundamental_type_infoE;
765     _ZTIN10__cxxabiv117__pbase_type_infoE;
766     _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
767     _ZTIN10__cxxabiv119__pointer_type_infoE;
768     _ZTIN10__cxxabiv120__si_class_type_infoE;
769     _ZTIN10__cxxabiv121__vmi_class_type_infoE;
770
771     # typeinfo name
772     _ZTS[a-fh-z];
773     _ZTSP[a-fh-z];
774     _ZTSPK[a-fh-z];
775     _ZTSN10__cxxabiv117__array_type_infoE;
776     _ZTSN10__cxxabiv117__class_type_infoE;
777     _ZTSN10__cxxabiv116__enum_type_infoE;
778     _ZTSN10__cxxabiv120__function_type_infoE;
779     _ZTSN10__cxxabiv123__fundamental_type_infoE;
780     _ZTSN10__cxxabiv117__pbase_type_infoE;
781     _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
782     _ZTSN10__cxxabiv119__pointer_type_infoE;
783     _ZTSN10__cxxabiv120__si_class_type_infoE;
784     _ZTSN10__cxxabiv121__vmi_class_type_infoE;
785
786     # __gnu_cxx::_verbose_terminate_handler()
787     _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
788
789   local:
790     *;
791 };
792
793 CXXABI_1.3.1 {
794
795     __cxa_get_exception_ptr;
796
797 } CXXABI_1.3;