Import pre-release gcc-5.0 to new vendor branch
[dragonfly.git] / contrib / gcc-5.0 / libstdc++-v3 / config / abi / pre / gnu-versioned-namespace.ver
1 ## Linker script for GNU namespace versioning.
2 ##
3 ## Copyright (C) 2002-2015 Free Software Foundation, Inc.
4 ##
5 ## This file is part of the libstdc++ version 3 distribution.
6 ##
7 ## This file is part of the GNU ISO C++ Library.  This library is free
8 ## software; you can redistribute it and/or modify it under the
9 ## terms of the GNU General Public License as published by the
10 ## Free Software Foundation; either version 3, or (at your option)
11 ## any later version.
12 ##
13 ## This library is distributed in the hope that it will be useful,
14 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 ## GNU General Public License for more details.
17 ##
18 ## You should have received a copy of the GNU General Public License along
19 ## with this library; see the file COPYING3.  If not see
20 ## <http://www.gnu.org/licenses/>.
21
22 GLIBCXX_7.0 {
23
24   global:
25
26     # Names inside the 'extern' block are demangled names.
27     extern "C++"
28     {
29       std::*;
30       std::__7::*;
31       std::random_device::*
32     };
33
34     # operator new(size_t)
35     _Znw[jmy];
36     # operator new(size_t, std::nothrow_t const&)
37     _Znw[jmy]RKSt9nothrow_t;
38
39     # operator delete(void*)
40     _ZdlPv;
41     # operator delete(void*, std::nothrow_t const&)
42     _ZdlPvRKSt9nothrow_t;
43
44     # operator new[](size_t)
45     _Zna[jmy];
46     # operator new[](size_t, std::nothrow_t const&)
47     _Zna[jmy]RKSt9nothrow_t;
48
49     # operator delete[](void*)
50     _ZdaPv;
51     # operator delete[](void*, std::nothrow_t const&)
52     _ZdaPvRKSt9nothrow_t;
53
54     # function-scope static objects requires a guard variable.
55     _ZGVNSt*;
56
57     # VTT structure
58     _ZTTNSt*;
59
60     # vtable
61     _ZTVSt*;
62     _ZTVNSt*;
63     _ZTVN9__gnu_cxx3__718stdio_sync_filebufI[cw]NSt3__711char_traitsI[cw]EEEE;
64
65     # thunk
66     _ZTv0_n12_NS*;
67     _ZTv0_n24_NS*;
68
69     # typeinfo structure
70     _ZTISt*;
71     _ZTINSt*;
72
73     # typeinfo name
74     _ZTSSt*;
75     _ZTSNSt*;
76
77     # locale
78     _ZNSt3__79has_facetINS_*;
79
80     # hash 
81     _ZNSt8__detail3__712__prime_listE;
82     _ZNSt3tr18__detail3__712__prime_listE;
83
84     # thread/mutex/condition_variable/future
85     __once_proxy;
86
87     # std::__detail::_List_node_base
88     _ZNSt8__detail3__715_List_node_base7_M_hook*;
89     _ZNSt8__detail3__715_List_node_base9_M_unhookEv;
90     _ZNSt8__detail3__715_List_node_base10_M_reverseEv;
91     _ZNSt8__detail3__715_List_node_base11_M_transfer*;
92     _ZNSt8__detail3__715_List_node_base4swapER*;
93
94     # std::__convert_to_v
95     _ZNSt3__714__convert_to_v*;
96
97     # std::__copy_streambufs
98     _ZNSt3__717__copy_streambufsI*;
99     _ZNSt3__721__copy_streambufs_eofI*;
100
101     # __gnu_cxx::__atomic_add
102     # __gnu_cxx::__exchange_and_add
103     _ZN9__gnu_cxx3__712__atomic_addEPV[il][il];
104     _ZN9__gnu_cxx3__718__exchange_and_addEPV[li][il];
105
106     # __gnu_cxx::__pool
107     _ZN9__gnu_cxx3__76__poolILb[01]EE13_M_initializeEv;
108     _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
109     _ZN9__gnu_cxx3__76__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
110     _ZN9__gnu_cxx3__76__poolILb[01]EE10_M_destroyEv;
111     _ZN9__gnu_cxx3__76__poolILb1EE16_M_get_thread_idEv;
112
113     _ZN9__gnu_cxx3__717__pool_alloc_base9_M_refillE[jmy];    
114     _ZN9__gnu_cxx3__717__pool_alloc_base16_M_get_free_listE[jmy];
115     _ZN9__gnu_cxx3__717__pool_alloc_base12_M_get_mutexEv;
116
117     _ZN9__gnu_cxx3__79free_list6_M_getE[jmy];
118     _ZN9__gnu_cxx3__79free_list8_M_clearEv;
119
120     # __gnu_cxx::stdio_sync_filebuf
121     _ZTVN9__gnu_cxx3__718stdio_sync_filebufI[cw]St3__711char_traitsI[cw]EEE;
122     _ZN9__gnu_cxx3__718stdio_sync_filebufI[cw]NSt3__711char_traitsI[cw]EEE[5-9]*;
123
124     # debug mode
125     _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
126     _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
127     _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
128     _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
129     _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
130
131     _ZN11__gnu_debug19_Safe_iterator_base9_M_attach*;
132     _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_single*;
133     _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
134     _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
135     _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
136     _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
137     _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
138
139     _ZNK11__gnu_debug16_Error_formatter10_M_message*;
140     _ZNK11__gnu_debug16_Error_formatter10_Parameter*;
141     _ZNK11__gnu_debug16_Error_formatter13_M_print_word*;
142     _ZNK11__gnu_debug16_Error_formatter15_M_print_string*;
143     _ZNK11__gnu_debug16_Error_formatter8_M_error*;
144     _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
145
146     # __gnu_debug::_Safe_unordered_container_base
147     # __gnu_debug::_Safe_local_iterator_base
148     _ZN11__gnu_debug30_Safe_unordered_container_base7_M_swapERS0_;
149     _ZN11__gnu_debug30_Safe_unordered_container_base13_M_detach_allEv;
150     _ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
151     _ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv;
152
153
154     # parallel mode
155     _ZN14__gnu_parallel9_Settings3getEv;
156     _ZN14__gnu_parallel9_Settings3setERS0_;
157
158   local:
159     *;
160 };
161
162
163 # Symbols in the support library (libsupc++) have their own tag.
164 CXXABI_2.0 {
165
166   global:
167     __cxa_allocate_exception;
168     __cxa_allocate_dependent_exception;
169     __cxa_bad_cast;
170     __cxa_bad_typeid;
171     __cxa_begin_catch;
172     __cxa_begin_cleanup;
173     __cxa_call_unexpected;
174     __cxa_current_exception_type;
175     __cxa_deleted_virtual;
176     __cxa_demangle;
177     __cxa_end_catch;
178     __cxa_end_cleanup;
179     __cxa_free_exception;
180     __cxa_free_dependent_exception;
181     __cxa_get_exception_ptr;
182     __cxa_get_globals;
183     __cxa_get_globals_fast;
184     __cxa_guard_abort;
185     __cxa_guard_acquire;
186     __cxa_guard_release;
187     __cxa_pure_virtual;
188     __cxa_rethrow;
189     __cxa_throw;
190     __cxa_type_match;
191     __cxa_vec_cctor;
192     __cxa_vec_cleanup;
193     __cxa_vec_ctor;
194     __cxa_vec_delete2;
195     __cxa_vec_delete3;
196     __cxa_vec_delete;
197     __cxa_vec_dtor;
198     __cxa_vec_new2;
199     __cxa_vec_new3;
200     __cxa_vec_new;
201     __gxx_personality_v0;
202     __gxx_personality_sj0;
203     __dynamic_cast;
204
205     # std::exception_ptr
206     _ZNSt15__exception_ptr13exception_ptrC1Ev;
207     _ZNSt15__exception_ptr13exception_ptrC2Ev;
208     _ZNSt15__exception_ptr13exception_ptrC1ERKS0_;
209     _ZNSt15__exception_ptr13exception_ptrC2ERKS0_;
210     _ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE;
211     _ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE;
212     _ZNSt15__exception_ptr13exception_ptrD1Ev;
213     _ZNSt15__exception_ptr13exception_ptrD2Ev;
214     _ZNSt15__exception_ptr13exception_ptraSERKS0_;
215     _ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv;
216     _ZNKSt15__exception_ptr13exception_ptrntEv;
217     _ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv;
218     _ZNSt15__exception_ptr13exception_ptr4swapERS0_;
219     _ZNSt15__exception_ptreqERKNS_13exception_ptrES2_;
220     _ZNSt15__exception_ptrneERKNS_13exception_ptrES2_;
221
222     _ZSt17current_exceptionv;
223     _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
224
225     # std::nested_exception
226     _ZNSt16nested_exceptionD*;
227     _ZTISt16nested_exception;
228     _ZTVSt16nested_exception;
229
230     # std::bad_function_call.
231     _ZNSt17bad_function_callD*;
232     _ZTISt17bad_function_call;
233     _ZTSSt17bad_function_call;
234     _ZTVSt17bad_function_call;
235
236     __cxa_throw_bad_array_new_length;
237     _Z*St20bad_array_new_length*;
238
239     __cxa_throw_bad_array_length;
240     _Z*St16bad_array_length*;
241
242     # Default function.
243     _ZSt11_Hash_bytesPKv*;
244
245     # FNV hash.
246     _ZSt15_Fnv_hash_bytesPKv*;
247
248     # __gnu_cxx::_verbose_terminate_handler()
249     _ZN9__gnu_cxx3__727__verbose_terminate_handlerEv;
250
251     # *_type_info classes, ctor and dtor
252     _ZN10__cxxabiv117__array_type_info*;
253     _ZN10__cxxabiv117__class_type_info*;
254     _ZN10__cxxabiv116__enum_type_info*;
255     _ZN10__cxxabiv120__function_type_info*;
256     _ZN10__cxxabiv123__fundamental_type_info*;
257     _ZN10__cxxabiv117__pbase_type_info*;
258     _ZN10__cxxabiv129__pointer_to_member_type_info*;
259     _ZN10__cxxabiv119__pointer_type_info*;
260     _ZN10__cxxabiv120__si_class_type_info*;
261     _ZN10__cxxabiv121__vmi_class_type_info*;
262
263     # *_type_info classes, member functions
264     _ZNK10__cxxabiv117__class_type_info*;
265     _ZNK10__cxxabiv120__function_type_info*;
266     _ZNK10__cxxabiv117__pbase_type_info*;
267     _ZNK10__cxxabiv129__pointer_to_member_type_info*;
268     _ZNK10__cxxabiv119__pointer_type_info*;
269     _ZNK10__cxxabiv120__si_class_type_info*;
270     _ZNK10__cxxabiv121__vmi_class_type_info*;
271
272     # typeinfo structure
273     _ZTI[a-z];
274     _ZTIP[a-z];
275     _ZTIPK[a-z];
276     _ZTIN10__cxxabiv117__array_type_infoE;
277     _ZTIN10__cxxabiv117__class_type_infoE;
278     _ZTIN10__cxxabiv116__enum_type_infoE;
279     _ZTIN10__cxxabiv120__function_type_infoE;
280     _ZTIN10__cxxabiv123__fundamental_type_infoE;
281     _ZTIN10__cxxabiv117__pbase_type_infoE;
282     _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
283     _ZTIN10__cxxabiv119__pointer_type_infoE;
284     _ZTIN10__cxxabiv120__si_class_type_infoE;
285     _ZTIN10__cxxabiv121__vmi_class_type_infoE;
286     _ZTIN10__cxxabiv115__forced_unwindE;
287     _ZTIN10__cxxabiv119__foreign_exceptionE;
288     _ZTIN10__cxxabiv115__forced_unwindE;
289     _ZTIN10__cxxabiv119__foreign_exceptionE;
290
291     # typeinfo name
292     _ZTS[a-z];
293     _ZTSP[a-z];
294     _ZTSPK[a-z];
295     _ZTSN10__cxxabiv117__array_type_infoE;
296     _ZTSN10__cxxabiv117__class_type_infoE;
297     _ZTSN10__cxxabiv116__enum_type_infoE;
298     _ZTSN10__cxxabiv120__function_type_infoE;
299     _ZTSN10__cxxabiv123__fundamental_type_infoE;
300     _ZTSN10__cxxabiv117__pbase_type_infoE;
301     _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
302     _ZTSN10__cxxabiv119__pointer_type_infoE;
303     _ZTSN10__cxxabiv120__si_class_type_infoE;
304     _ZTSN10__cxxabiv121__vmi_class_type_infoE;
305
306     # typeinfo for char16_t and char32_t
307     _ZTIDs;
308     _ZTIPDs;
309     _ZTIPKDs;
310     _ZTIDi;
311     _ZTIPDi;
312     _ZTIPKDi;
313
314     # typeinfo for decimal floating point types
315     _ZTID[fde];
316     _ZTIPD[fde];
317     _ZTIPKD[fde];
318
319     # typeinfo for decltype(nullptr)
320     _ZTIDn;
321     _ZTIPDn;
322     _ZTIPKDn;
323
324     # typeinfo for __int128 and unsigned __int128
325     _ZTI[no];
326     _ZTIP[no];
327     _ZTIPK[no];
328
329     # virtual table
330     _ZTVN10__cxxabiv117__array_type_infoE;
331     _ZTVN10__cxxabiv117__class_type_infoE;
332     _ZTVN10__cxxabiv116__enum_type_infoE;
333     _ZTVN10__cxxabiv120__function_type_infoE;
334     _ZTVN10__cxxabiv123__fundamental_type_infoE;
335     _ZTVN10__cxxabiv117__pbase_type_infoE;
336     _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
337     _ZTVN10__cxxabiv119__pointer_type_infoE;
338     _ZTVN10__cxxabiv120__si_class_type_infoE;
339     _ZTVN10__cxxabiv121__vmi_class_type_infoE;
340
341     # operator delete(void*, std::size_t)
342     _ZdlPv[jmy];
343     # operator delete[](void*, std::size_t)
344     _ZdaPv[jmy];
345 };
346
347 # Symbols in the support library (libsupc++) supporting trans-mem.
348 CXXABI_TM_1 {
349
350   global:
351     __cxa_tm_cleanup;
352
353 };