xref: /netbsd-src/external/gpl3/gcc/dist/libstdc++-v3/config/abi/pre/gnu.ver (revision f89f6560d453f5e37386cc7938c072d2f528b9fa)
1## Linker script for GNU versioning (GNU ld 2.13.91+ only.)
2##
3## Copyright (C) 2002-2013 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## You should have received a copy of the GNU General Public License along
17## with this library; see the file COPYING3.  If not see
18## <http://www.gnu.org/licenses/>.
19
20GLIBCXX_3.4 {
21
22  global:
23
24    # Names inside the 'extern' block are demangled names.
25    extern "C++"
26    {
27      std::[A-Z]*;
28      std::a[a-c]*;
29      std::ad[a-n]*;
30      std::ad[p-z]*;
31      std::a[e-z]*;
32#     std::ba[a-r]*;
33      std::basic_[a-e]*;
34      std::basic_f[a-h]*;
35#     std::basic_filebuf;
36      std::basic_f[j-r]*;
37#     std::basic_fstream;
38      std::basic_f[t-z]*;
39      std::basic_[g-h]*;
40      std::basic_i[a-e]*;
41#     std::basic_ifstream;
42      std::basic_i[g-r]*;
43      std::basic_istr[a-d]*;
44#     std::basic_istream;
45      std::basic_istr[f-z]*;
46      std::basic_i[t-z]*;
47      std::basic_[j-n]*;
48      std::basic_o[a-e]*;
49#     std::basic_ofstream;
50#     std::basic_o[g-z]*;
51      std::basic_o[g-r]*;
52      std::basic_ostr[a-d]*;
53      std::basic_ostr[f-z]*;
54      std::basic_[p-r]*;
55#     std::basic_streambuf
56#     std::basic_string
57#     std::basic_stringbuf
58      std::basic_stringstream*;
59      std::basic_[t-z]*;
60      std::ba[t-z]*;
61      std::b[b-z]*;
62      std::c[a-g]*;
63#     std::char_traits;
64#     std::c[i-z]*;
65      std::c[i-n]*;
66#     std::condition_variable;
67      std::co[^n]*;
68      std::c[p-s]*;
69      std::cu[^r]*;
70#     std::current_exception
71      std::c[v-z]*;
72#     std::[d-g]*;
73      std::d[a-d]*;
74      std::d[f-n]*;
75      std::domain_error::d*;
76#     std::domain_error::~d*;
77      std::d[p-z]*;
78      std::e[a-q]*;
79      std::error[^_]*;
80      std::e[s-z]*;
81      std::gslice*;
82      std::h[^a]*;
83      std::i[a-m]*;
84      std::invalid_argument::i*;
85#     std::invalid_argument::~i*;
86#     std::ios_base::[A-Ha-z]*;
87      std::ios_base::[A-Ha-f]*;
88      std::ios_base::goodbit;
89      std::ios_base::[h-z]*;
90      std::ios_base::_M_grow_words*;
91      std::ios_base::_M_init*;
92      std::ios_base::Init::[A-Za-z]*;
93#     std::ios_base::[J-Za-z]*;
94      std::i[p-r]*;
95#     std::istream
96#     std::istreambuf_iterator
97      std::istringstream*;
98      std::istrstream*;
99      std::i[t-z]*;
100      std::[A-Zj-k]*;
101      std::length_error::l*;
102#     std::length_error::~l*;
103      std::logic_error*;
104      std::locale::[A-Za-e]*;
105      std::locale::facet::[A-Za-z]*;
106      std::locale::facet::_S_get_c_locale*;
107      std::locale::facet::_S_clone_c_locale*;
108      std::locale::facet::_S_create_c_locale*;
109      std::locale::facet::_S_destroy_c_locale*;
110      std::locale::[A-Zg-h]*;
111      std::locale::id::[A-Za-z]*;
112      std::locale::id::_M_id*;
113      std::locale::[A-Zj-z]*;
114      std::locale::_[A-Ha-z]*;
115      std::locale::_Impl::[A-Za-z]*;
116#     std::locale::_Impl::_M_[A-Za-z]*;
117      std::locale::_[J-Ra-z]*;
118      std::locale::_S_normalize_category*;
119      std::locale::_[T-Za-z]*;
120#     std::[A-Zm-r]*;
121#     std::[A-Zm]*;
122      std::[A-Z]*;
123      std::messages*;
124      std::money*;
125#     std::n[^u]*;
126      std::n[^aue]*;
127      std::nu[^m]*;
128      std::num[^e]*;
129      std::ostrstream*;
130      std::out_of_range::o*;
131#     std::out_of_range::~o*;
132      std::overflow_error::o*;
133#     std::overflow_error::~o*;
134#     std::[p-q]*;
135      std::r[^ae]*;
136      std::range_error::r*;
137#     std::range_error::~r*;
138#     std::re[^t]*;
139#     std::rethrow_exception
140      std::set_new_handler*;
141      std::set_terminate*;
142      std::set_unexpected*;
143#     std::string
144      std::strstream*;
145      std::strstreambuf*;
146#     std::t[a-q]*;
147      std::t[a-g]*;
148      std::th[a-h]*;
149      std::th[j-q]*;
150      std::th[s-z]*;
151#     std::t[i-n]*;
152      std::tr1::h[^a]*;
153      std::t[s-z]*;
154#     std::[A-Zu-z]*;
155      std::underflow_error::u*;
156#     std::underflow_error::~u*;
157      std::uncaught_exception*;
158      std::unexpected*;
159      std::[A-Zv-z]*;
160      std::_List_node_base::hook*;
161      std::_List_node_base::swap*;
162      std::_List_node_base::unhook*;
163      std::_List_node_base::reverse*;
164      std::_List_node_base::transfer*;
165      std::__timepunct*;
166#     std::__numeric_limits_base*;
167      std::__num_base::_S_format_float*;
168      std::__num_base::_S_format_int*;
169      std::__num_base::_S_atoms_in;
170      std::__num_base::_S_atoms_out;
171      std::__moneypunct_cache*;
172      std::__numpunct_cache*;
173      std::__timepunct_cache*
174#     __gnu_debug::_Error_formatter*
175    };
176
177    # Names not in an 'extern' block are mangled names.  Character classes
178    # are used in many of the regex patterns to compensate for minor differences
179    # among the standard integer types and sizes on different platforms and
180    # under different modes of 64-bit architecture (ILP64, LLP64, etc.)
181
182    # std::string
183    # 'y' here and below represents 'unsigned long long'
184    # where it is used for size_type on LLP64 platforms.
185    _ZNSsC[12][EI][PRjmvyN]*;
186    _ZNSsD*;
187    _ZNSs[0-58-9]a*;
188    _ZNSs5beginEv;
189    _ZNSs[0-58-9][c-e]*;
190    _ZNSs[0-59][g-z]*;
191#   _ZNSs[67][a-z]*E[PRcjmvy]*;
192    _ZNSs6appendE[PRcjmvy]*;
193    _ZNSs6assignE[PRcjmvy]*;
194    _ZNSs6insertE[PRcjmvy]*;
195    _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEE[PRcjmvy]*;
196    _ZNSs[67][j-z]*E[PRcjmvy]*;
197    _ZNSs7[a-z]*EES2_[NPRjmy]*;
198    _ZNSs7[a-z]*EES2_S[12]*;
199    _ZNSs12_Alloc_hiderC*;
200    _ZNSs12_M_leak_hardEv;
201    _ZNSs12_S_constructE[jmy]cRKSaIcE;
202    _ZNSs12_S_empty_repEv;
203    _ZNSs13_S_copy_chars*;
204    _ZNSs[0-9][0-9]_M_replace*;
205    _ZNSs4_Rep10_M_destroy*;
206    _ZNSs4_Rep10_M_dispose*;
207    _ZNSs4_Rep10_M_refcopyEv;
208    _ZNSs4_Rep10_M_refdataEv;
209    _ZNSs4_Rep12_S_empty_repEv;
210    _ZNSs4_Rep13_M_set_leakedEv;
211    _ZNSs4_Rep15_M_set_sharableEv;
212    _ZNSs4_Rep7_M_grab*;
213    _ZNSs4_Rep8_M_clone*;
214    _ZNSs4_Rep9_S_createE[jmy][jmy]*;
215    _ZNSs7_M_dataEPc;
216    _ZNSs7_M_leakEv;
217    _ZNSs9_M_mutateE[jmy][jmy][jmy];
218    _ZNSs4_Rep20_S_empty_rep_storageE;
219    _ZNSs4_Rep11_S_max_sizeE;
220    _ZNSs4_Rep11_S_terminalE;
221    _ZNSsaSE[PRc]*;
222    _ZNSsixE*;
223    _ZNSspLE[PRc]*;
224    _ZNKSs[0-3][a-b]*;
225    _ZNKSs[5-9][a-b]*;
226    _ZNKSs[0-9][d-e]*;
227    _ZNKSs[0-9][g-z]*;
228    _ZNKSs[0-9][0-9][a-z]*;
229    _ZNKSs4find*;
230    _ZNKSs[a-z]*;
231    _ZNKSs4_Rep12_M_is_leakedEv;
232    _ZNKSs4_Rep12_M_is_sharedEv;
233    _ZNKSs6_M_repEv;
234    _ZNKSs7_M_dataEv;
235    _ZNKSs7_M_iendEv;
236    _ZNKSs8_M_check*;
237    _ZNKSs8_M_limit*;
238    _ZNKSs9_M_ibeginEv;
239    _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_E*;
240    _ZNKSs7compare*;
241    _ZNKSs5c_strEv;
242    _ZNKSs8capacityEv;
243    _ZNKSs4copyEPc[jmy][jmy];
244
245    # std::wstring
246    _ZNSbIwSt11char_traitsIwESaIwEEC[12][EI][PRjmvyN]*;
247    _ZNSbIwSt11char_traitsIwESaIwEED*;
248    _ZNSbIwSt11char_traitsIwESaIwEE[0-58-9]a*;
249    _ZNSbIwSt11char_traitsIwESaIwEE5beginEv;
250    _ZNSbIwSt11char_traitsIwESaIwEE[0-58-9][c-e]*;
251    _ZNSbIwSt11char_traitsIwESaIwEE[0-59][g-z]*;
252#   _ZNSbIwSt11char_traitsIwESaIwEE[67][a-b]*E[PRwjmvy]*;
253    _ZNSbIwSt11char_traitsIwESaIwEE6appendE[PRwjmvy]*;
254    _ZNSbIwSt11char_traitsIwESaIwEE6assignE[PRwjmvy]*;
255    _ZNSbIwSt11char_traitsIwESaIwEE6insertE[PRwjmvy]*;
256    _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EE[PRwjmvy]*;
257    _ZNSbIwSt11char_traitsIwESaIwEE[67][j-z]*E[PRwjmvy]*;
258    _ZNSbIwSt11char_traitsIwESaIwEE7[a-z]*EES6_[NPRjmy]*;
259    _ZNSbIwSt11char_traitsIwESaIwEE7[a-z]*EES6_S[56]*;
260    _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC*;
261    _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv;
262    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructE[jmy]wRKS1_;
263    _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv;
264    _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_chars*;
265    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][0-9]_M_replace*;
266    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroy*;
267    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_dispose*;
268    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv;
269    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv;
270    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv;
271    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv;
272    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv;
273    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grab*;
274    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_clone*;
275    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createE[jmy][jmy]*;
276    _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw;
277    _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv;
278    _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateE[jmy][jmy][jmy];
279    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE;
280    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE;
281    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE;
282    _ZNSbIwSt11char_traitsIwESaIwEEaSE[PRw]*;
283    _ZNSbIwSt11char_traitsIwESaIwEEixE*;
284    _ZNSbIwSt11char_traitsIwESaIwEEpLE[PRw]*;
285    _ZNKSbIwSt11char_traitsIwESaIwEE[0-3][a-b]*;
286    _ZNKSbIwSt11char_traitsIwESaIwEE[5-9][a-b]*;
287    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][d-e]*;
288    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][g-z]*;
289    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][0-9][a-z]*;
290    _ZNKSbIwSt11char_traitsIwESaIwEE[a-z]*;
291    _ZNKSbIwSt11char_traitsIwESaIwEE4find*;
292    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv;
293    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv;
294    _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv;
295    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv;
296    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv;
297    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_check*;
298    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limit*;
299    _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv;
300    _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_E*;
301    _ZNKSbIwSt11char_traitsIwESaIwEE7compare*;
302    _ZNKSbIwSt11char_traitsIwESaIwEE5c_strEv;
303    _ZNKSbIwSt11char_traitsIwESaIwEE8capacityEv;
304    _ZNKSbIwSt11char_traitsIwESaIwEE4copyEPw[jmy][jmy];
305
306    # std::basic_streambuf
307    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[CD]*;
308    _ZNKSt15basic_streambufI[cw]St11char_traitsI[cw]EE[0-9]*;
309    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[0-9][a-z][^t]*;
310    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[0-9][0-9][a-z][^t]*;
311    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EEaSERKS2_;
312
313    # std::basic_stringbuf
314    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC*;
315    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EED[^2]*;
316    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][a-r]*;
317    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]seek*;
318    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]set*;
319    _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
320    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
321    _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs;
322    _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E;
323    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][t-z]*;
324    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[a-o]*;
325    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[q-z]*;
326    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][0-9]_M_[a-z]*;
327
328    # std::basic_iostream constructors, destructors
329    _ZNSdC*;
330    _ZNSdD*;
331
332    # std::basic_filebuf
333    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EEC*;
334    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EED*;
335    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE0*;
336    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE13*;
337    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE15*;
338    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE16*;
339    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE19*;
340    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE2*;
341    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE3*;
342    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4openEPKc*;
343    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4sync*;
344    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE[5-9]*;
345    _ZNKSt13basic_filebufI[cw]St11char_traitsI[cw]EE7is_openEv;
346
347    # std::basic_fstream
348    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
349    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
350    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EED*;
351    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5closeEv;
352    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
353    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
354    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
355
356    # std::basic_ifstream
357    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
358    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
359    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EED*;
360    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5closeEv;
361    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
362    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
363    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
364
365    # std::basic_ofstream
366    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
367    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
368    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EED*;
369    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5closeEv;
370    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
371    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
372    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
373
374    # std::basic_istream<char>
375    _ZNSiC*;
376    _ZNSiD*;
377    _ZNKSi[0-9][a-z]*;
378    _ZNSi[0-9][a-h]*;
379    _ZNSi[0-9][j-z]*;
380    # 'x' here and below matches 'long long' where it
381    # is used for signed sizetypes on LLP64 platforms.
382    _ZNSi6ignoreE[ilx][ilx];
383    _ZNSirsE*[^g];
384
385    # std::basic_istream<wchar_t>
386    _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
387    _ZNSt13basic_istreamIwSt11char_traitsIwEED*;
388    _ZNKSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-z]*;
389    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
390    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
391    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilx][ijlmx];
392    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*[^g];
393
394    # std::istream operators and extractors
395    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
396    _ZSt2wsI[cw]St11char_traitsI[cw]EE*;
397    _ZStrsI[cw]St11char_traitsI[cw]EERSt13basic_istream*;
398    _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
399    _ZStrsISt11char_traitsI[cw]EERSt13basic_istream*;
400    _ZStrsId[cw]St11char_traitsI[cw]EERSt13basic_istream*;
401    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
402    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
403
404    # std::basic_ostream<char>
405    _ZNSoC*;
406    _ZNSoD*;
407    _ZNKSo6sentrycvbEv;
408    _ZNSo8_M_writeEPKc[ilx];
409    _ZNSo[0-9][a-z]*;
410    _ZNSolsE*[^g];
411
412    # std::basic_ostream<wchar_t>
413    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC*;
414    _ZNSt13basic_ostreamIwSt11char_traitsIwEED*;
415    _ZNKSt13basic_ostreamIwSt11char_traitsIwEE[0-9][a-z]*;
416    _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw;
417    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv;
418    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpE*;
419    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv;
420    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKw*;
421    _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentry*;
422    _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKw[ilx];
423    _ZNSt13basic_ostreamIwSt11char_traitsIwEElsE*[^g];
424
425    # std::ostream operators and inserters
426    _ZSt4end[ls]I[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
427    _ZSt5flushI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
428    _ZStlsI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
429    _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostream*;
430    _ZStlsISt11char_traitsI[cw]EERSt13basic_ostream*;
431    _ZStlsId[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
432    _ZStlsIe[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
433    _ZStlsIf[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
434
435    # std::locale destructors
436    _ZNSt6localeD*;
437
438    # std::locale::facet destructors
439    _ZNSt6locale5facetD*;
440
441    # std::locale::_Impl constructors, destructors
442    _ZNSt6locale5_ImplC*;
443    _ZNSt6locale5_ImplD*;
444
445    # std::ios_base, std::ios_base::Init destructors
446    _ZNSt8ios_baseD*;
447    _ZNSt8ios_base4InitD*;
448
449    # bool std::has_facet
450    _ZSt9has_facetIS*;
451
452    # std::use_facet
453    _ZSt9use_facetIS*;
454
455    # std::ctype
456    _ZNKSt5ctypeIcE8*;
457    _ZNKSt5ctypeIcE9*;
458    _ZNKSt5ctypeIcE10*;
459    _ZNKSt5ctypeIw*;
460    _ZNSt5ctypeI[cw]*;
461
462    # std::ctype_base
463    _ZNSt10ctype_base*;
464
465    # std::ctype_byname
466    _ZNSt12ctype_bynameI[cw]*;
467
468    # std::num_get
469    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
470
471    # std::num_put
472    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
473
474    # std::money_get
475    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
476
477    # std::money_put
478    _ZNKSt9money_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
479
480    # std::time_get
481    _ZNSt8time_get*;
482    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE1*;
483    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE8*;
484    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE21*;
485
486    # std::time_get_byname
487    _ZNSt15time_get_byname*;
488
489    # std::time_put
490    _ZNSt8time_put*;
491    _ZNKSt8time_put*;
492
493    # std::time_put_byname
494    _ZNSt15time_put_byname*;
495
496    # std::numeric_limits
497    _ZNSt21__numeric_limits_base[5-9]*;
498    _ZNSt21__numeric_limits_base1[0-7][hirt]*;
499    _ZNSt21__numeric_limits_base1[0-7]mi*;
500    _ZNSt21__numeric_limits_base1[0-7]max_e*;
501
502    _ZNSt14numeric_limitsI[a-m]E[5-9]*;
503    _ZNSt14numeric_limitsI[p-z]E[5-9]*;
504    _ZNSt14numeric_limitsI[a-m]E1[0-7][hirt]*;
505    _ZNSt14numeric_limitsI[p-z]E1[0-7][hirt]*;
506    _ZNSt14numeric_limitsI[a-m]E1[0-7]mi*;
507    _ZNSt14numeric_limitsI[p-z]E1[0-7]mi*;
508    _ZNSt14numeric_limitsI[a-m]E1[0-7]max_e*;
509    _ZNSt14numeric_limitsI[p-z]E1[0-7]max_e*;
510
511    # std::_Rb_tree
512    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
513    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
514    _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
515    _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
516    _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
517    _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
518    _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
519    _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
520    _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
521
522    # std::__basic_file
523    _ZNKSt12__basic_fileIcE7is_openEv;
524    _ZNSt12__basic_fileIcE2fdEv;
525    _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei;
526    _ZNSt12__basic_fileIcE4syncEv;
527    _ZNSt12__basic_fileIcE5closeEv;
528    _ZNSt12__basic_fileIcE6xsgetn*;
529    _ZNSt12__basic_fileIcE6xsputn*;
530    _ZNSt12__basic_fileIcE7seekoff*;
531    _ZNSt12__basic_fileIcE8sys_openE*St13_Ios_Openmode;
532    _ZNSt12__basic_fileIcE8xsputn_2*;
533    _ZNSt12__basic_fileIcE9showmanycEv;
534    _ZNSt12__basic_fileIcEC*;
535    _ZNSt12__basic_fileIcED*;
536
537    # std::__convert_to_v
538    _ZSt14__convert_to_vI[^g]*;
539
540    # __gnu_cxx::stdio_sync_filebuf
541    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
542
543    # __gnu_cxx::__atomic_add
544    # __gnu_cxx::__exchange_and_add
545    _ZN9__gnu_cxx12__atomic_addEPV[il]i;
546    _ZN9__gnu_cxx18__exchange_and_addEPV[il]i;
547
548    # debug mode
549    _ZN10__gnu_norm15_List_node_base4hook*;
550    _ZN10__gnu_norm15_List_node_base4swap*;
551    _ZN10__gnu_norm15_List_node_base6unhookEv;
552    _ZN10__gnu_norm15_List_node_base7reverseEv;
553    _ZN10__gnu_norm15_List_node_base8transfer*;
554
555    # __gnu_debug::_Safe_sequence_base and _Safe_iterator_base
556    _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
557    _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
558    _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
559    _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
560    _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
561    _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
562    _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
563    _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
564
565    # __gnu_debug::_Error_formatter
566    _ZNK11__gnu_debug16_Error_formatter10_M_message*;
567    _ZNK11__gnu_debug16_Error_formatter10_Parameter*;
568    _ZNK11__gnu_debug16_Error_formatter13_M_print_word*;
569    _ZNK11__gnu_debug16_Error_formatter15_M_print_string*;
570    _ZNK11__gnu_debug16_Error_formatter8_M_error*;
571
572    # exceptions as functions
573    _ZSt16__throw_bad_castv;
574    _ZSt17__throw_bad_allocv;
575    _ZSt18__throw_bad_typeidv;
576    _ZSt19__throw_ios_failurePKc;
577    _ZSt19__throw_logic_errorPKc;
578    _ZSt19__throw_range_errorPKc;
579    _ZSt20__throw_domain_errorPKc;
580    _ZSt20__throw_length_errorPKc;
581    _ZSt20__throw_out_of_rangePKc;
582    _ZSt21__throw_bad_exceptionv;
583    _ZSt21__throw_runtime_errorPKc;
584    _ZSt22__throw_overflow_errorPKc;
585    _ZSt23__throw_underflow_errorPKc;
586    _ZSt24__throw_invalid_argumentPKc;
587
588    # operator new(size_t)
589    _Znw[jmy];
590    # operator new(size_t, std::nothrow_t const&)
591    _Znw[jmy]RKSt9nothrow_t;
592
593    # operator delete(void*)
594    _ZdlPv;
595    # operator delete(void*, std::nothrow_t const&)
596    _ZdlPvRKSt9nothrow_t;
597
598    # operator new[](size_t)
599    _Zna[jmy];
600    # operator new[](size_t, std::nothrow_t const&)
601    _Zna[jmy]RKSt9nothrow_t;
602
603    # operator delete[](void*)
604    _ZdaPv;
605    # operator delete[](void*, std::nothrow_t const&)
606    _ZdaPvRKSt9nothrow_t;
607
608    # virtual table
609    _ZTVNSt8ios_base7failureE;
610    _ZTVNSt6locale5facetE;
611    _ZTVS[a-z];
612    _ZTVSt[0-9][A-Za-z]*;
613#   _ZTVSt[0-9][0-9][A-Za-z]*;
614    _ZTVSt[0-9][0-9][A-Z]*;
615#   _ZTVSt[0-9][0-9][a-d]*;
616    _ZTVSt[0-9][0-9]a*;
617    _ZTVSt10bad_typeid;
618    _ZTVSt13bad_exception;
619    _ZTVSt[0-9][0-9]basic*;
620    _ZTVSt[0-9][0-9][c-d]*;
621    _ZTVSt[0-9][0-9][g-k]*;
622    _ZTVSt11logic_error;
623    _ZTVSt12length_error;
624#   _ZTVSt[0-9][0-9][m-q]*;
625    _ZTVSt[0-9][0-9][m]*;
626    _ZTVSt[0-9][0-9]n[^e]*;
627    _ZTVSt[0-9][0-9][o-q]*;
628    _ZTVSt11range_error;
629    _ZTVSt13runtime_error;
630    _ZTVSt[0-9][0-9][t-z]*;
631    _ZTVSt[0-9][0-9]e[^r]*;
632    _ZTVSt[0-9][0-9]s[^y]*;
633
634    _ZTVSt11__timepunctI[cw]E;
635    _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
636    _ZTVSt21__ctype_abstract_baseI[cw]E;
637
638    # VTT structure
639    _ZTTS[a-z];
640    _ZTTSt[0-9][A-Za-z]*;
641    _ZTTSt[0-9][0-9][A-Za-z]*;
642
643    # typeinfo structure
644    _ZTIS[a-z];
645    _ZTISt[0-9][A-Za-z]*;
646#   _ZTISt[0-9][0-9][A-Za-z]*;
647    _ZTISt[0-9][0-9][A-Z]*;
648#   _ZTISt[0-9][0-9][a-d]*;
649    _ZTISt[0-9][0-9]a*;
650    _ZTISt10bad_typeid;
651    _ZTISt13bad_exception;
652    _ZTISt[0-9][0-9]basic*;
653    _ZTISt[0-9][0-9][c-d]*;
654    _ZTISt[0-9][0-9][g-k]*;
655    _ZTISt11logic_error;
656    _ZTISt12length_error;
657#   _ZTISt[0-9][0-9][m-q]*;
658    _ZTISt[0-9][0-9][m]*;
659    _ZTISt[0-9][0-9]n[^e]*;
660    _ZTISt[0-9][0-9][o-q]*;
661    _ZTISt11range_error;
662    _ZTISt13runtime_error;
663    _ZTISt[0-9][0-9][t-z]*;
664    _ZTISt[0-9][0-9]e[^r]*;
665    _ZTISt[0-9][0-9]s[^y]*;
666    _ZTISt11__timepunctI[cw]E;
667    _ZTISt10__num_base;
668    _ZTISt21__ctype_abstract_baseI[cw]E;
669    _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
670#    _ZTISt16__numpunct_cacheI[cw]E;
671#    _ZTISt17__timepunct_cacheI[cw]E;
672#    _ZTISt18__moneypunct_cacheI[cw]Lb?EE;
673    _ZTINSt8ios_base7failureE;
674    _ZTINSt6locale5facetE;
675    _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
676    _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
677
678    # typeinfo name
679    _ZTSNSt8ios_base7failureE;
680    _ZTSNSt6locale5facetE;
681    _ZTSS[a-z];
682    _ZTSSt[0-9][A-Za-z]*;
683#   _ZTSSt[0-9][0-9][A-Za-z]*;
684    _ZTSSt[0-9][0-9][A-Z]*;
685#   _ZTSSt[0-9][0-9][a-d]*;
686    _ZTSSt[0-9][0-9]a*;
687    _ZTSSt10bad_typeid;
688    _ZTSSt13bad_exception;
689    _ZTSSt[0-9][0-9]basic*;
690    _ZTSSt[0-9][0-9][c-d]*;
691    _ZTSSt[0-9][0-9][g-k]*;
692    _ZTSSt11logic_error;
693    _ZTSSt12length_error;
694#   _ZTSSt[0-9][0-9][m-q]*;
695    _ZTSSt[0-9][0-9][m]*;
696    _ZTSSt[0-9][0-9]n[^e]*;
697    _ZTSSt[0-9][0-9][o-q]*;
698    _ZTSSt11range_error;
699    _ZTSSt13runtime_error;
700    _ZTSSt[0-9][0-9][t-z]*;
701    _ZTSSt[0-9][0-9]e[^r]*;
702    _ZTSSt[0-9][0-9]s[^y]*;
703
704    _ZTSSt11__timepunctI[cw]E;
705    _ZTSSt10__num_base;
706    _ZTSSt21__ctype_abstract_baseI[cw]E;
707    _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
708    _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
709    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
710
711    # std::bad_alloc::~bad_alloc, std::bad_cast::~bad_cast,
712    # std::bad_typeid::~bad_typeid, std::bad_exception::~bad_exception
713    _ZNSt9bad_allocD*;
714    _ZNSt8bad_castD*;
715    _ZNSt10bad_typeidD*;
716    _ZNSt13bad_exceptionD*;
717
718    # function-scope static objects requires a guard variable.
719    _ZGVNSt[^1]*;
720    _ZGVNSt1[^7]*;
721
722    # complete and deleting destructors where base destructors should not
723    # be exported.
724    _ZNSt11range_errorD[01]Ev;
725    _ZNSt12domain_errorD[01]Ev;
726    _ZNSt12length_errorD[01]Ev;
727    _ZNSt12out_of_rangeD[01]Ev;
728    _ZNSt14overflow_errorD[01]Ev;
729    _ZNSt15underflow_errorD[01]Ev;
730    _ZNSt16invalid_argumentD[01]Ev;
731
732    # virtual function thunks
733    _ZThn8_NS*;
734    _ZThn16_NS*;
735    _ZTv0_n12_NS*;
736    _ZTv0_n24_NS*;
737
738    # stub functions from libmath
739    sinf;
740    sinl;
741    sinhf;
742    sinhl;
743    cosf;
744    cosl;
745    coshf;
746    coshl;
747    tanf;
748    tanl;
749    tanhf;
750    tanhl;
751    atan2f;
752    atan2l;
753    expf;
754    expl;
755    hypotf;
756    hypotl;
757    hypot;
758    logf;
759    logl;
760    log10f;
761    log10l;
762    powf;
763    powl;
764    sqrtf;
765    sqrtl;
766    copysignf;
767
768#ifdef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT
769   # GLIBCXX_ABI compatibility only.
770    # std::string
771    _ZNKSs11_M_disjunctEPKc;
772    _ZNKSs15_M_check_lengthE[jmy][jmy]PKc;
773    _ZNSs4_Rep26_M_set_length_and_sharableE*;
774    _ZNSs7_M_copyEPcPKc[jmy];
775    _ZNSs7_M_moveEPcPKc[jmy];
776    _ZNSs9_M_assignEPc[jmy]c;
777
778    # std::wstring
779    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
780    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jmy][jmy]PKc;
781    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
782    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jmy];
783    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jmy];
784    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jmy]w;
785
786    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
787    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
788    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
789
790    _ZNSi6ignoreE[ilvx];
791    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilvx];
792
793    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
794
795    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
796#endif
797
798    # std::locale::Impl _M_ members
799    _ZNSt6locale5_Impl16_M_install_facetEPKNS_2idEPKNS_5facetE;
800    _ZNSt6locale5_Impl16_M_replace_facetEPKS0_PKNS_2idE;
801    _ZNSt6locale5_Impl19_M_replace_categoryEPKS0_PKPKNS_2idE;
802    _ZNSt6locale5_Impl21_M_replace_categoriesEPKS0_i;
803
804  # DO NOT DELETE THIS LINE.  Port-specific symbols, if any, will be here.
805
806  local:
807    *;
808};
809
810GLIBCXX_3.4.1 {
811
812    _ZNSt12__basic_fileIcE4fileEv;
813
814} GLIBCXX_3.4;
815
816GLIBCXX_3.4.2 {
817
818    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv;
819
820    _ZN9__gnu_cxx17__pool_alloc_base9_M_refillE[jmy];
821    _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listE[jmy];
822    _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv;
823
824} GLIBCXX_3.4.1;
825
826GLIBCXX_3.4.3 {
827
828    # stub functions from libmath
829    acosf;
830    acosl;
831    asinf;
832    asinl;
833    atanf;
834    atanl;
835    ceilf;
836    ceill;
837    floorf;
838    floorl;
839    fmodf;
840    fmodl;
841    frexpf;
842    frexpl;
843    ldexpf;
844    ldexpl;
845    modff;
846    modfl;
847
848} GLIBCXX_3.4.2;
849
850GLIBCXX_3.4.4 {
851
852    _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv;
853    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE;
854    _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv;
855    _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv;
856    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
857    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
858    _ZN9__gnu_cxx6__poolILb[01]EE10_M_destroyEv;
859
860    _ZN9__gnu_cxx9free_list6_M_getE*;
861    _ZN9__gnu_cxx9free_list8_M_clearEv;
862
863} GLIBCXX_3.4.3;
864
865GLIBCXX_3.4.5 {
866
867    # std::string
868    _ZNKSs11_M_disjunctEPKc;
869    _ZNKSs15_M_check_lengthE[jmy][jmy]PKc;
870    _ZNSs4_Rep26_M_set_length_and_sharableE*;
871    _ZNSs7_M_copyEPcPKc[jmy];
872    _ZNSs7_M_moveEPcPKc[jmy];
873    _ZNSs9_M_assignEPc[jmy]c;
874
875    # std::wstring
876    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
877    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jmy][jmy]PKc;
878    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
879    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jmy];
880    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jmy];
881    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jmy]w;
882
883    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
884    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
885    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
886
887    _ZNSi6ignoreE[ilvx];
888    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilvx];
889
890    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
891
892    # Those template instantiations weren't exported on Solaris in GCC 4.6
893    # and aren't necessary for correct operation, so don't emit them now
894    # (PR libstdc++/52188).
895#if !defined(__sun__) && !defined(__svr4__)
896    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
897#endif
898} GLIBCXX_3.4.4;
899
900GLIBCXX_3.4.6 {
901
902    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EE[ix]PSt15basic_streambuf*;
903    _ZNSt8ios_base17_M_call_callbacksENS_5eventE;
904    _ZNSt8ios_base20_M_dispose_callbacksEv;
905    _ZNSt6locale5facet13_S_get_c_nameEv;
906
907    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
908
909#ifdef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT
910    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
911#endif
912
913    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv;
914
915} GLIBCXX_3.4.5;
916
917GLIBCXX_3.4.7 {
918
919    _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetE[jmy];
920
921} GLIBCXX_3.4.6;
922
923GLIBCXX_3.4.8 {
924
925    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EElPSt15basic_streambuf*;
926
927} GLIBCXX_3.4.7;
928
929GLIBCXX_3.4.9 {
930
931    _ZNSt6__norm15_List_node_base4hook*;
932    _ZNSt6__norm15_List_node_base4swap*;
933    _ZNSt6__norm15_List_node_base6unhookEv;
934    _ZNSt6__norm15_List_node_base7reverseEv;
935    _ZNSt6__norm15_List_node_base8transfer*;
936
937    _ZNSo9_M_insertI[^g]*;
938    _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertI[^g]*;
939    _ZNSi10_M_extractI[^g]*;
940    _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractI[^g]*;
941
942    _ZSt21__copy_streambufs_eofI[cw]St11char_traitsI[cw]EE[ilx]PSt15basic_streambuf*;
943
944    _ZSt16__ostream_insert*;
945
946    _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
947    _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb;
948    _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
949    _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
950
951    _ZNKSt9bad_alloc4whatEv;
952    _ZNKSt8bad_cast4whatEv;
953    _ZNKSt10bad_typeid4whatEv;
954    _ZNKSt13bad_exception4whatEv;
955
956} GLIBCXX_3.4.8;
957
958GLIBCXX_3.4.10 {
959
960    _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
961
962    _ZNKSt3tr14hashIRKSbIwSt11char_traitsIwESaIwEEEclES6_;
963    _ZNKSt3tr14hashIRKSsEclES2_;
964    _ZNKSt3tr14hashISbIwSt11char_traitsIwESaIwEEEclES4_;
965    _ZNKSt3tr14hashISsEclESs;
966    _ZNKSt3tr14hashIeEclEe;
967
968    _ZNKSt4hashIRKSbIwSt11char_traitsIwESaIwEEEclES5_;
969    _ZNKSt4hashIRKSsEclES1_;
970    _ZNKSt4hashISbIwSt11char_traitsIwESaIwEEEclES3_;
971    _ZNKSt4hashISsEclESs;
972    _ZNKSt4hashIeEclEe;
973
974    _ZSt17__verify_grouping*;
975
976    _ZNSt8__detail12__prime_listE;
977    _ZNSt3tr18__detail12__prime_listE;
978
979    # for parallel mode
980    _ZN14__gnu_parallel9_Settings3getEv;
981    _ZN14__gnu_parallel9_Settings3setERS0_;
982
983    _ZNSt9__cxx199815_List_node_base4hook*;
984    _ZNSt9__cxx199815_List_node_base4swap*;
985    _ZNSt9__cxx199815_List_node_base6unhookEv;
986    _ZNSt9__cxx199815_List_node_base7reverseEv;
987    _ZNSt9__cxx199815_List_node_base8transfer*;
988
989    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE6stosscEv;
990
991    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4syncEv;
992    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE[5-9C]*;
993    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EED[^2]*;
994
995} GLIBCXX_3.4.9;
996
997GLIBCXX_3.4.11 {
998
999    # atomic
1000    __atomic_flag_for_address;
1001    __atomic_flag_wait_explicit;
1002    atomic_flag_clear_explicit;
1003    atomic_flag_test_and_set_explicit;
1004    _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order;
1005    _ZNVSt9__atomic011atomic_flag5clearESt12memory_order;
1006
1007    # mutex
1008    _ZSt10adopt_lock;
1009    _ZSt10defer_lock;
1010    _ZSt11try_to_lock;
1011
1012    _ZTISt10lock_error;
1013    _ZTVSt10lock_error;
1014    _ZTSSt10lock_error;
1015    _ZNKSt10lock_error4whatEv;
1016
1017    _ZSt11__once_call;
1018    _ZSt15__once_callable;
1019    _ZSt14__once_functor;
1020    _ZSt23__get_once_functor_lockv;
1021    __once_proxy;
1022
1023    # condition_variable
1024    _ZNSt18condition_variable10notify_allEv;
1025    _ZNSt18condition_variable10notify_oneEv;
1026    _ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE;
1027    _ZNSt18condition_variableC1Ev;
1028    _ZNSt18condition_variableC2Ev;
1029    _ZNSt18condition_variableD1Ev;
1030    _ZNSt18condition_variableD2Ev;
1031    _ZNSt22condition_variable_anyC1Ev;
1032    _ZNSt22condition_variable_anyC2Ev;
1033    _ZNSt22condition_variable_anyD1Ev;
1034    _ZNSt22condition_variable_anyD2Ev;
1035
1036    # thread
1037    _ZNSt6thread4joinEv;
1038    _ZNSt6thread6detachEv;
1039    _ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEE;
1040
1041    # system_error
1042    _ZSt15system_categoryv;
1043    _ZSt16generic_categoryv;
1044
1045    _ZNKSt10error_code23default_error_conditionEv;
1046    _ZNKSt14error_category23default_error_conditionEi;
1047
1048    _ZNKSt14error_category10equivalentERKSt10error_codei;
1049    _ZNKSt14error_category10equivalentEiRKSt15error_condition;
1050
1051    _ZTISt14error_category;
1052    _ZTSSt14error_category;
1053    _ZTVSt14error_category;
1054
1055    _ZTSSt12system_error;
1056    _ZTISt12system_error;
1057    _ZTVSt12system_error;
1058    _ZNSt12system_errorD*Ev;
1059    # Those template instantiations weren't exported on Solaris in GCC 4.6
1060    # and aren't necessary for correct operation, so don't emit them now
1061    # (PR libstdc++/54872).
1062#if !defined(__sun__) && !defined(__svr4__)
1063    _ZNSt12system_errorC*;
1064#endif
1065
1066    _ZNKSt4hashISt10error_codeEclES0_;
1067
1068    _ZSt20__throw_system_errori;
1069
1070    # char16_t and char32_t
1071    _ZNSt14numeric_limitsIDiE[5-9]*;
1072    _ZNSt14numeric_limitsIDsE[5-9]*;
1073    _ZNSt14numeric_limitsIDiE1[0-7][hirt]*;
1074    _ZNSt14numeric_limitsIDsE1[0-7][hirt]*;
1075    _ZNSt14numeric_limitsIDiE1[0-7]mi*;
1076    _ZNSt14numeric_limitsIDsE1[0-7]mi*;
1077    _ZNSt14numeric_limitsIDiE1[0-7]max_e*;
1078    _ZNSt14numeric_limitsIDsE1[0-7]max_e*;
1079
1080    # chrono
1081    _ZNSt6chrono12system_clock12is_monotonicE;
1082    _ZNSt6chrono12system_clock3nowEv;
1083    _ZNSt6chrono15monotonic_clock12is_monotonicE;
1084    _ZNSt6chrono15monotonic_clock3nowEv;
1085
1086    # string/wstring initializer_list overloads
1087    _ZNSs6appendESt16initializer_listIcE;
1088    _ZNSs6assignESt16initializer_listIcE;
1089    _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEESt16initializer_listIcE;
1090    _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_St16initializer_listIcE;
1091    _ZNSsC1ESt16initializer_listIcERKSaIcE;
1092    _ZNSsC2ESt16initializer_listIcERKSaIcE;
1093    _ZNSsaSESt16initializer_listIcE;
1094    _ZNSspLESt16initializer_listIcE;
1095    _ZNSbIwSt11char_traitsIwESaIwEE6appendESt16initializer_listIwE;
1096    _ZNSbIwSt11char_traitsIwESaIwEE6assignESt16initializer_listIwE;
1097    _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EESt16initializer_listIwE;
1098    _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_St16initializer_listIwE;
1099    _ZNSbIwSt11char_traitsIwESaIwEEC1ESt16initializer_listIwERKS1_;
1100    _ZNSbIwSt11char_traitsIwESaIwEEC2ESt16initializer_listIwERKS1_;
1101    _ZNSbIwSt11char_traitsIwESaIwEEaSESt16initializer_listIwE;
1102    _ZNSbIwSt11char_traitsIwESaIwEEpLESt16initializer_listIwE;
1103
1104    # ctype<char>::_M_narrow_init and _M_widen_init
1105    _ZNKSt5ctypeIcE14_M_narrow_initEv;
1106    _ZNKSt5ctypeIcE13_M_widen_initEv;
1107
1108} GLIBCXX_3.4.10;
1109
1110GLIBCXX_3.4.12 {
1111
1112    # mutex
1113    _ZSt27__set_once_functor_lock_ptrPSt11unique_lockISt5mutexE;
1114    _ZSt16__get_once_mutexv;
1115
1116} GLIBCXX_3.4.11;
1117
1118GLIBCXX_3.4.13 {
1119
1120    # new fstream members
1121    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
1122    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
1123    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
1124    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
1125    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
1126    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
1127    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
1128
1129} GLIBCXX_3.4.12;
1130
1131GLIBCXX_3.4.14 {
1132
1133    # atomic
1134    _ZNSt9__atomic011atomic_flag12test_and_setESt12memory_order;
1135    _ZNSt9__atomic011atomic_flag5clearESt12memory_order;
1136
1137    # future
1138    _ZNSt12future_errorD*;
1139    _ZNKSt12future_error4whatEv;
1140    _ZTSSt12future_error;
1141    _ZTVSt12future_error;
1142    _ZTISt12future_error;
1143    _ZSt20__throw_future_errori;
1144
1145    # GLIBCXX_ABI compatibility only.
1146    _ZSt15future_category;
1147
1148    # string|wstring ::cbegin member functions
1149    _ZNKSs6cbeginEv;
1150    _ZNKSs4cendEv;
1151    _ZNKSs7crbeginEv;
1152    _ZNKSs5crendEv;
1153    _ZNKSbIwSt11char_traitsIwESaIwEE4cendEv;
1154    _ZNKSbIwSt11char_traitsIwESaIwEE6cbeginEv;
1155    _ZNKSbIwSt11char_traitsIwESaIwEE7crbeginEv;
1156    _ZNKSbIwSt11char_traitsIwESaIwEE5crendEv;
1157
1158    # string|wstring ::_S_construct<> and ::_S_construct_aux_2 helpers
1159    _ZNSs12_S_constructI*;
1160    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructI*;
1161    _ZNSs18_S_construct_aux_2*;
1162    _ZNSbIwSt11char_traitsIwESaIwEE18_S_construct_aux_2*;
1163
1164    # string|wstring shrink_to_fit member function
1165    _ZNSs13shrink_to_fitEv;
1166    _ZNSbIwSt11char_traitsIwESaIwEE13shrink_to_fitEv;
1167
1168    # string|wstring move contructor, move assignment operator and
1169    # move assign.
1170    _ZNSsC1EOSs;
1171    _ZNSbIwSt11char_traitsIwESaIwEEC1EOS2_;
1172    _ZNSsaSEOSs;
1173    _ZNSbIwSt11char_traitsIwESaIwEEaSEOS2_;
1174    _ZNSs6assignEOSs;
1175    _ZNSbIwSt11char_traitsIwESaIwEE6assignEOS2_;
1176
1177    _ZSt25__throw_bad_function_callv;
1178
1179    # std::time_get::_M_extract_wday_or_month
1180    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE24_M_extract_wday_or_month*;
1181
1182    # libstdc++/16896
1183    _ZNSt15_List_node_base7_M_hook*;
1184    _ZNSt15_List_node_base9_M_unhookEv;
1185    _ZNSt15_List_node_base10_M_reverseEv;
1186    _ZNSt15_List_node_base11_M_transfer*;
1187
1188    _ZNSt6__norm15_List_node_base7_M_hook*;
1189    _ZNSt6__norm15_List_node_base9_M_unhookEv;
1190    _ZNSt6__norm15_List_node_base10_M_reverseEv;
1191    _ZNSt6__norm15_List_node_base11_M_transfer*;
1192
1193    _ZNSt9__cxx199815_List_node_base7_M_hook*;
1194    _ZNSt9__cxx199815_List_node_base9_M_unhookEv;
1195    _ZNSt9__cxx199815_List_node_base10_M_reverseEv;
1196    _ZNSt9__cxx199815_List_node_base11_M_transfer*;
1197
1198    # std::numeric_limits::max_digits10
1199    _ZNSt21__numeric_limits_base12max_digits10E;
1200    _ZNSt14numeric_limitsI[a-m]E12max_digits10E;
1201    _ZNSt14numeric_limitsI[p-z]E12max_digits10E;
1202    _ZNSt14numeric_limitsID[is]E12max_digits10E;
1203
1204} GLIBCXX_3.4.13;
1205
1206GLIBCXX_3.4.15 {
1207
1208    # string|wstring front and back member functions
1209    _ZNSs5frontEv;
1210    _ZNKSs5frontEv;
1211    _ZNSbIwSt11char_traitsIwESaIwEE5frontEv;
1212    _ZNKSbIwSt11char_traitsIwESaIwEE5frontEv;
1213    _ZNSs4backEv;
1214    _ZNKSs4backEv;
1215    _ZNSbIwSt11char_traitsIwESaIwEE4backEv;
1216    _ZNKSbIwSt11char_traitsIwESaIwEE4backEv;
1217
1218    # string|wstring move contructor.
1219    _ZNSsC2EOSs;
1220    _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_;
1221
1222    # basic_filebuf::_M_get_ext_pos
1223    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE14_M_get_ext_pos*;
1224
1225    # targets using emutls
1226    __emutls_v._ZSt11__once_call;
1227    __emutls_v._ZSt15__once_callable;
1228
1229    # std::future_category is now a function
1230    _ZSt15future_categoryv;
1231
1232    # std::placeholders
1233    _ZNSt12placeholders*;
1234
1235    _ZNSt8__detail15_List_node_base7_M_hook*;
1236    _ZNSt8__detail15_List_node_base9_M_unhookEv;
1237    _ZNSt8__detail15_List_node_base10_M_reverseEv;
1238    _ZNSt8__detail15_List_node_base11_M_transfer*;
1239    _ZNSt8__detail15_List_node_base4swapERS0_S1_;
1240
1241    _ZNSt11range_errorD2Ev;
1242    _ZNSt12domain_errorD2Ev;
1243    _ZNSt12length_errorD2Ev;
1244    _ZNSt12out_of_rangeD2Ev;
1245    _ZNSt14overflow_errorD2Ev;
1246    _ZNSt15underflow_errorD2Ev;
1247    _ZNSt16invalid_argumentD2Ev;
1248
1249    _ZNSt11regex_errorD*;
1250    _ZNKSt11regex_error4whatEv;
1251    _ZTVSt11regex_error;
1252    _ZTISt11regex_error;
1253    _ZSt19__throw_regex_errorNSt15regex_constants10error_typeE;
1254
1255    # std::bad_weak_ptr
1256    _ZNSt12bad_weak_ptrD*;
1257    _ZNKSt12bad_weak_ptr4whatEv;
1258    _ZTVSt12bad_weak_ptr;
1259    _ZTISt12bad_weak_ptr;
1260
1261    # std::bad_function_call
1262    _ZNSt17bad_function_callD*;
1263    _ZTISt17bad_function_call;
1264    _ZTVSt17bad_function_call;
1265
1266    _ZNSt14error_categoryC*;
1267    _ZNSt14error_categoryD*;
1268
1269    _ZNSt13__future_base12_Result_baseC*;
1270    _ZNSt13__future_base12_Result_baseD*;
1271    _ZTINSt13__future_base12_Result_baseE;
1272    _ZTVNSt13__future_base12_Result_baseE;
1273
1274    _ZNSt13__future_base11_State_baseD*;
1275    _ZTINSt13__future_base11_State_baseE;
1276    _ZTVNSt13__future_base11_State_baseE;
1277
1278} GLIBCXX_3.4.14;
1279
1280GLIBCXX_3.4.16 {
1281
1282    # libstdc++/48465
1283    _ZNSs10_S_compareE[jmy][jmy];
1284    _ZNSbIwSt11char_traitsIwESaIwEE10_S_compareE[jmy][jmy];
1285
1286    # basic_streambuf<>::__safe_gbump, __safe_pbump
1287    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE12__safe_gbumpE*;
1288    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE12__safe_pbumpE*;
1289
1290    # basic_stringbuf<>::_M_pbump
1291    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE8_M_pbumpE*;
1292
1293} GLIBCXX_3.4.15;
1294
1295GLIBCXX_3.4.17 {
1296
1297    # std::thread::hardware_concurrency
1298    _ZNSt6thread20hardware_concurrencyEv;
1299
1300    # __gnu_debug::_Safe_unordered_container_base and _Safe_local_iterator_base
1301    _ZN11__gnu_debug30_Safe_unordered_container_base7_M_swapERS0_;
1302    _ZN11__gnu_debug30_Safe_unordered_container_base13_M_detach_allEv;
1303    _ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
1304    _ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv;
1305
1306    # std::numeric_limits<__int128> and <unsigned __int128>
1307    _ZNSt14numeric_limitsInE*;
1308    _ZNSt14numeric_limitsIoE*;
1309
1310    # std::string::pop_back()
1311    _ZNSs8pop_backEv;
1312    # std::wstring::pop_back()
1313    _ZNSbIwSt11char_traitsIwESaIwEE8pop_backEv;
1314
1315    # std::_Async_state_common::~_Async_state_common
1316    _ZTINSt13__future_base19_Async_state_commonE;
1317    _ZTSNSt13__future_base19_Async_state_commonE;
1318    _ZTVNSt13__future_base19_Async_state_commonE;
1319    _ZNSt13__future_base19_Async_state_commonD0Ev;
1320    _ZNSt13__future_base19_Async_state_commonD1Ev;
1321    _ZNSt13__future_base19_Async_state_commonD2Ev;
1322
1323    # std::chrono::steady_clock::now()
1324    _ZNSt6chrono12steady_clock3nowEv;
1325
1326} GLIBCXX_3.4.16;
1327
1328GLIBCXX_3.4.18 {
1329
1330  global:
1331
1332    # Names inside the 'extern' block are demangled names.
1333    extern "C++"
1334    {
1335      std::random_device::*;
1336      std::__detail::_Prime_rehash_policy::*;
1337    };
1338
1339    # std::this_thread::__sleep_for
1340    _ZNSt11this_thread11__sleep_for*;
1341
1342    # std::bad_function_call::what()
1343    _ZNKSt17bad_function_call4whatEv;
1344
1345} GLIBCXX_3.4.17;
1346
1347GLIBCXX_3.4.19 {
1348
1349    # chrono second generation
1350    _ZNSt6chrono3_V212steady_clock3nowEv;
1351    _ZNSt6chrono3_V212steady_clock9is_steadyE;
1352    _ZNSt6chrono3_V212system_clock3nowEv;
1353    _ZNSt6chrono3_V212system_clock9is_steadyE;
1354
1355} GLIBCXX_3.4.18;
1356
1357# Symbols in the support library (libsupc++) have their own tag.
1358CXXABI_1.3 {
1359
1360  global:
1361    __cxa_allocate_exception;
1362    __cxa_bad_cast;
1363    __cxa_bad_typeid;
1364    __cxa_begin_catch;
1365    __cxa_begin_cleanup;
1366    __cxa_call_unexpected;
1367    __cxa_current_exception_type;
1368    __cxa_demangle;
1369    __cxa_end_catch;
1370    __cxa_end_cleanup;
1371    __cxa_free_exception;
1372    __cxa_get_globals;
1373    __cxa_get_globals_fast;
1374    __cxa_guard_abort;
1375    __cxa_guard_acquire;
1376    __cxa_guard_release;
1377    __cxa_pure_virtual;
1378    __cxa_rethrow;
1379    __cxa_throw;
1380    __cxa_type_match;
1381    __cxa_vec_ctor;
1382    __cxa_vec_cctor;
1383    __cxa_vec_cleanup;
1384    __cxa_vec_delete;
1385    __cxa_vec_delete2;
1386    __cxa_vec_delete3;
1387    __cxa_vec_dtor;
1388    __cxa_vec_new;
1389    __cxa_vec_new2;
1390    __cxa_vec_new3;
1391    __gxx_personality_v0;
1392    __gxx_personality_sj0;
1393    __gxx_personality_seh0;
1394    __dynamic_cast;
1395
1396    # *_type_info classes, ctor and dtor
1397    _ZN10__cxxabiv117__array_type_info*;
1398    _ZN10__cxxabiv117__class_type_info*;
1399    _ZN10__cxxabiv116__enum_type_info*;
1400    _ZN10__cxxabiv120__function_type_info*;
1401    _ZN10__cxxabiv123__fundamental_type_info*;
1402    _ZN10__cxxabiv117__pbase_type_info*;
1403    _ZN10__cxxabiv129__pointer_to_member_type_info*;
1404    _ZN10__cxxabiv119__pointer_type_info*;
1405    _ZN10__cxxabiv120__si_class_type_info*;
1406    _ZN10__cxxabiv121__vmi_class_type_info*;
1407
1408    # *_type_info classes, member functions
1409    _ZNK10__cxxabiv117__class_type_info*;
1410    _ZNK10__cxxabiv120__function_type_info*;
1411    _ZNK10__cxxabiv117__pbase_type_info*;
1412    _ZNK10__cxxabiv129__pointer_to_member_type_info*;
1413    _ZNK10__cxxabiv119__pointer_type_info*;
1414    _ZNK10__cxxabiv120__si_class_type_info*;
1415    _ZNK10__cxxabiv121__vmi_class_type_info*;
1416
1417    # virtual table
1418    _ZTVN10__cxxabiv117__array_type_infoE;
1419    _ZTVN10__cxxabiv117__class_type_infoE;
1420    _ZTVN10__cxxabiv116__enum_type_infoE;
1421    _ZTVN10__cxxabiv120__function_type_infoE;
1422    _ZTVN10__cxxabiv123__fundamental_type_infoE;
1423    _ZTVN10__cxxabiv117__pbase_type_infoE;
1424    _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
1425    _ZTVN10__cxxabiv119__pointer_type_infoE;
1426    _ZTVN10__cxxabiv120__si_class_type_infoE;
1427    _ZTVN10__cxxabiv121__vmi_class_type_infoE;
1428
1429    # typeinfo structure (and some names)
1430    _ZTI[a-fh-mp-z];
1431    _ZTIP[a-fh-mp-z];
1432    _ZTIPK[a-fh-mp-z];
1433    _ZTIN10__cxxabiv117__array_type_infoE;
1434    _ZTIN10__cxxabiv117__class_type_infoE;
1435    _ZTIN10__cxxabiv116__enum_type_infoE;
1436    _ZTIN10__cxxabiv120__function_type_infoE;
1437    _ZTIN10__cxxabiv123__fundamental_type_infoE;
1438    _ZTIN10__cxxabiv117__pbase_type_infoE;
1439    _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
1440    _ZTIN10__cxxabiv119__pointer_type_infoE;
1441    _ZTIN10__cxxabiv120__si_class_type_infoE;
1442    _ZTIN10__cxxabiv121__vmi_class_type_infoE;
1443
1444    # typeinfo name
1445    _ZTS[a-fh-mp-z];
1446    _ZTSP[a-fh-mp-z];
1447    _ZTSPK[a-fh-mp-z];
1448    _ZTSN10__cxxabiv117__array_type_infoE;
1449    _ZTSN10__cxxabiv117__class_type_infoE;
1450    _ZTSN10__cxxabiv116__enum_type_infoE;
1451    _ZTSN10__cxxabiv120__function_type_infoE;
1452    _ZTSN10__cxxabiv123__fundamental_type_infoE;
1453    _ZTSN10__cxxabiv117__pbase_type_infoE;
1454    _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
1455    _ZTSN10__cxxabiv119__pointer_type_infoE;
1456    _ZTSN10__cxxabiv120__si_class_type_infoE;
1457    _ZTSN10__cxxabiv121__vmi_class_type_infoE;
1458
1459    # __gnu_cxx::_verbose_terminate_handler()
1460    _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
1461
1462};
1463
1464CXXABI_1.3.1 {
1465
1466    __cxa_get_exception_ptr;
1467
1468} CXXABI_1.3;
1469
1470CXXABI_1.3.2 {
1471
1472    # typeinfo structures
1473    _ZTIN10__cxxabiv115__forced_unwindE;
1474    _ZTIN10__cxxabiv119__foreign_exceptionE;
1475
1476} CXXABI_1.3.1;
1477
1478CXXABI_1.3.3 {
1479
1480    # typeinfo for char16_t and char32_t
1481    _ZTIDs;
1482    _ZTIPDs;
1483    _ZTIPKDs;
1484    _ZTIDi;
1485    _ZTIPDi;
1486    _ZTIPKDi;
1487
1488    # exception_ptr
1489    _ZNSt15__exception_ptr13exception_ptrC1Ev;
1490    _ZNSt15__exception_ptr13exception_ptrC2Ev;
1491    _ZNSt15__exception_ptr13exception_ptrC1ERKS0_;
1492    _ZNSt15__exception_ptr13exception_ptrC2ERKS0_;
1493    _ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE;
1494    _ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE;
1495    _ZNSt15__exception_ptr13exception_ptrD1Ev;
1496    _ZNSt15__exception_ptr13exception_ptrD2Ev;
1497    _ZNSt15__exception_ptr13exception_ptraSERKS0_;
1498    _ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv;
1499    _ZNKSt15__exception_ptr13exception_ptrntEv;
1500    _ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv;
1501    _ZNSt15__exception_ptr13exception_ptr4swapERS0_;
1502    _ZNSt15__exception_ptreqERKNS_13exception_ptrES2_;
1503    _ZNSt15__exception_ptrneERKNS_13exception_ptrES2_;
1504
1505    _ZSt17current_exceptionv;
1506    _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
1507
1508} CXXABI_1.3.2;
1509
1510CXXABI_1.3.4 {
1511
1512    # typeinfo for decimal floating point types
1513    _ZTID[fde];
1514    _ZTIPD[fde];
1515    _ZTIPKD[fde];
1516
1517} CXXABI_1.3.3;
1518
1519CXXABI_1.3.5 {
1520
1521    # typeinfo for decltype(nullptr)
1522    _ZTIDn;
1523    _ZTIPDn;
1524    _ZTIPKDn;
1525
1526    # typeinfo for __int128 and unsigned __int128
1527    _ZTI[no];
1528    _ZTIP[no];
1529    _ZTIPK[no];
1530
1531    # Default function.
1532    _ZSt11_Hash_bytesPKv*;
1533
1534    # FNV hash.
1535    _ZSt15_Fnv_hash_bytesPKv*;
1536
1537    # std::nested_exception
1538    _ZNSt16nested_exceptionD*;
1539    _ZTISt16nested_exception;
1540    _ZTVSt16nested_exception;
1541
1542} CXXABI_1.3.4;
1543
1544CXXABI_1.3.6 {
1545
1546    __cxa_allocate_dependent_exception;
1547    __cxa_free_dependent_exception;
1548    __cxa_deleted_virtual;
1549
1550} CXXABI_1.3.5;
1551
1552CXXABI_1.3.7 {
1553    __cxa_thread_atexit;
1554} CXXABI_1.3.6;
1555
1556
1557# Symbols in the support library (libsupc++) supporting transactional memory.
1558CXXABI_TM_1 {
1559
1560  global:
1561    __cxa_tm_cleanup;
1562
1563};
1564