OSDN Git Service

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