2003-07-06 06:07:36 +02:00
|
|
|
## Linker script for GNU ld 2.13.91+ only.
|
2002-02-14 19:24:13 +01:00
|
|
|
##
|
2003-01-23 18:21:11 +01:00
|
|
|
## Copyright (C) 2002, 2003 Free Software Foundation, Inc.
|
2002-02-14 19:24:13 +01:00
|
|
|
##
|
|
|
|
## This file is part of the libstdc++ version 3 distribution.
|
|
|
|
##
|
|
|
|
## This file is part of the GNU ISO C++ Library. This library is free
|
|
|
|
## software; you can redistribute it and/or modify it under the
|
|
|
|
## terms of the GNU General Public License as published by the
|
|
|
|
## Free Software Foundation; either version 2, or (at your option)
|
|
|
|
## any later version.
|
|
|
|
##
|
|
|
|
## This library is distributed in the hope that it will be useful,
|
|
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
## GNU General Public License for more details.
|
|
|
|
##
|
|
|
|
## You should have received a copy of the GNU General Public License along
|
|
|
|
## with this library; see the file COPYING. If not, write to the Free
|
|
|
|
## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
|
|
|
## USA.
|
|
|
|
|
2003-07-05 06:05:45 +02:00
|
|
|
GLIBCXX_3.4 {
|
2002-02-14 19:24:13 +01:00
|
|
|
|
|
|
|
global:
|
|
|
|
|
2002-02-20 01:58:17 +01:00
|
|
|
# Names inside the 'extern' block are demangled names.
|
2002-02-14 19:24:13 +01:00
|
|
|
extern "C++"
|
|
|
|
{
|
2003-03-25 02:53:13 +01:00
|
|
|
std::[A-Za-k]*;
|
2002-10-11 09:09:36 +02:00
|
|
|
std::length_error*;
|
|
|
|
std::logic_error*;
|
2003-01-06 22:23:00 +01:00
|
|
|
std::locale::[A-Za-e]*;
|
|
|
|
std::locale::facet::[A-Za-z]*;
|
[multiple changes]
2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Export _S_get_c_locale instead of
_S_c_locale object.
2003-10-02 Petur Runolfsson <peturr02@ru.is>
* config/locale/generic/c_locale.cc
(category_names, locale::_S_categories): Const qualify.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/generic/time_members.h (__timepunct::__timepunct):
Copy string contents before assigning to _M_name_timepunct,
qualify strcpy and strlen with std::.
* config/locale/gnu/time_members.h: Same.
* config/locale/gnu/messages_members.h (messages::messages):
Copy string contents before assigning to _M_name_messages,
qualify strcpy and strlen with std::.
* config/os/gnu-linux/ctype_noninline.h
(ctype<char>::classic_table()): Don't call locale::classic().
* include/bits/locale_classes.h
(locale::_S_categories): Const qualify.
(locale::_S_once, locale::_S_initialize_once,
locale::facet::_S_once, locale::facet::_S_initialize_once,
locale::facet::_S_get_c_locale): Declare.
(locale::_S_initialize): Don't define.
(locale::facet::_S_c_locale): Make private.
(locale::facet::_S_c_name): Same, const qualify.
(locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
parameters, add throw() specifier.
* include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
messages::_M_name_messages): Const qualify.
* src/locale.cc
(locale::_S_once, locale::facet::_S_once): Define.
(locale::classic): Move initialization code...
(locale::_S_initialize_once): ...here.
(locale::_S_initialize): Call _S_initialize_once through
__gthread_once.
(locale::facet::_S_initialize_once): Initialize _S_c_locale.
(locale::facet::_S_get_c_locale): Call _S_initialize_once through
__gthread_once before returning _S_c_locale.
* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
Drop unused parameters, add throw() specifier, don't initialize
locale::facet::_S_c_locale and _S_c_name.
* config/locale/generic/messages_members.h:
Replace _S_c_locale with _S_get_c_locale().
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/numeric_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/locale_facets.tcc: Same.
* src/codecvt.cc: Same.
* src/ctype.cc: Same.
From-SVN: r72040
2003-10-02 18:56:39 +02:00
|
|
|
std::locale::facet::_S_get_c_locale*;
|
2003-01-06 22:23:00 +01:00
|
|
|
std::locale::facet::_S_clone_c_locale*;
|
|
|
|
std::locale::facet::_S_create_c_locale*;
|
|
|
|
std::locale::facet::_S_destroy_c_locale*;
|
2003-01-23 18:21:11 +01:00
|
|
|
std::locale::[A-Zg-h]*;
|
|
|
|
std::locale::id::[A-Za-z]*;
|
2003-10-09 23:17:11 +02:00
|
|
|
std::locale::id::_M_id*;
|
2003-01-23 18:21:11 +01:00
|
|
|
std::locale::[A-Zj-z]*;
|
|
|
|
std::locale::_[A-Ha-z]*;
|
|
|
|
std::locale::_Impl::[A-Za-z]*;
|
|
|
|
std::locale::_Impl::_M_[A-Za-z]*;
|
|
|
|
std::locale::_[J-Ra-z]*;
|
2002-10-13 06:46:58 +02:00
|
|
|
std::locale::_S_normalize_category*;
|
|
|
|
std::locale::_[T-Za-z]*;
|
2002-10-11 09:09:36 +02:00
|
|
|
std::[A-Zm-z]*;
|
2002-02-14 19:24:13 +01:00
|
|
|
std::__throw_*;
|
|
|
|
std::__basic_file*;
|
2002-03-08 18:59:14 +01:00
|
|
|
std::__timepunct*;
|
2003-02-20 17:47:39 +01:00
|
|
|
std::__numeric_limits_base*;
|
2003-03-04 06:23:56 +01:00
|
|
|
std::__num_base::_S_format_float*;
|
|
|
|
std::__num_base::_S_format_int*;
|
|
|
|
std::__num_base::_S_atoms_in;
|
2003-06-27 09:25:38 +02:00
|
|
|
std::__num_base::_S_atoms_out;
|
2003-07-18 04:27:16 +02:00
|
|
|
std::__moneypunct_cache*;
|
|
|
|
std::__numpunct_cache*;
|
|
|
|
std::__timepunct_cache*
|
2002-02-14 19:24:13 +01:00
|
|
|
};
|
|
|
|
|
2002-02-20 01:58:17 +01:00
|
|
|
# Names not in an 'extern' block are mangled names.
|
2002-08-23 18:52:29 +02:00
|
|
|
|
2003-10-09 23:17:11 +02:00
|
|
|
# operator new(size_t)
|
|
|
|
_Znw[jm];
|
|
|
|
# operator new(size_t, std::nothrow_t const&)
|
|
|
|
_Znw[jm]RKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator delete(void*)
|
|
|
|
_ZdlPv;
|
|
|
|
# operator delete(void*, std::nothrow_t const&)
|
|
|
|
_ZdlPvRKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator new[](size_t)
|
|
|
|
_Zna[jm];
|
|
|
|
# operator new[](size_t, std::nothrow_t const&)
|
|
|
|
_Zna[jm]RKSt9nothrow_t;
|
|
|
|
|
|
|
|
# operator delete[](void*)
|
|
|
|
_ZdaPv;
|
|
|
|
# operator delete[](void*, std::nothrow_t const&)
|
|
|
|
_ZdaPvRKSt9nothrow_t;
|
|
|
|
|
2002-10-13 06:46:58 +02:00
|
|
|
# std::locale destructors
|
2002-10-11 09:09:36 +02:00
|
|
|
_ZNSt6localeD*;
|
2003-01-06 22:23:00 +01:00
|
|
|
|
|
|
|
# std::locale::facet destructors
|
|
|
|
_ZNSt6locale5facetD*;
|
2002-10-13 06:46:58 +02:00
|
|
|
|
2003-01-23 18:21:11 +01:00
|
|
|
# std::locale::_Impl constructors, destrutors
|
|
|
|
_ZNSt6locale5_ImplC*;
|
|
|
|
_ZNSt6locale5_ImplD*;
|
2002-10-11 09:09:36 +02:00
|
|
|
|
2003-01-23 18:21:11 +01:00
|
|
|
# bool has_facet
|
2002-03-08 07:05:21 +01:00
|
|
|
_ZSt9has_facet*;
|
2002-03-01 02:27:57 +01:00
|
|
|
|
2003-07-09 22:58:32 +02:00
|
|
|
# _Rb_tree
|
2003-07-30 17:01:58 +02:00
|
|
|
_ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
|
|
|
|
_ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
|
2003-07-09 22:58:32 +02:00
|
|
|
_ZSt18_Rb_tree_rebalancePSt18_Rb_tree_node_baseRS0_;
|
2003-07-30 17:01:58 +02:00
|
|
|
_ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
|
2003-07-09 22:58:32 +02:00
|
|
|
_ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
|
|
|
|
_ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
|
|
|
|
_ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
|
|
|
|
|
2003-10-09 23:17:11 +02:00
|
|
|
# std::__ctype_abstract_base*
|
|
|
|
_ZNSt21__ctype_abstract_base*;
|
|
|
|
|
|
|
|
# std::__codecvt_abstract_base*
|
|
|
|
_ZNStSt23__codecvt_abstract_base*;
|
|
|
|
|
2003-06-13 07:45:57 +02:00
|
|
|
# virtual table
|
2003-03-05 07:02:15 +01:00
|
|
|
_ZTVNSt8ios_base7failureE;
|
|
|
|
_ZTVNSt6locale5facetE;
|
|
|
|
_ZTVS[a-z];
|
|
|
|
_ZTVSt[0-9][A-Za-z]*;
|
|
|
|
_ZTVSt[0-9][0-9][A-Za-z]*;
|
|
|
|
_ZTVSt11__timepunctI[cw]E;
|
|
|
|
_ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
|
|
|
|
_ZTVSt21__ctype_abstract_baseI[cw]E;
|
|
|
|
|
2003-06-13 07:45:57 +02:00
|
|
|
# VTT structure
|
2003-03-05 07:02:15 +01:00
|
|
|
_ZTTS[a-z];
|
|
|
|
_ZTTSt[0-9][A-Za-z]*;
|
|
|
|
_ZTTSt[0-9][0-9][A-Za-z]*;
|
2002-02-15 03:21:33 +01:00
|
|
|
|
2003-06-13 07:45:57 +02:00
|
|
|
# typeinfo structure
|
|
|
|
_ZTIS[a-z];
|
2003-03-05 07:02:15 +01:00
|
|
|
_ZTINSt8ios_base7failureE;
|
|
|
|
_ZTINSt6locale5facetE;
|
|
|
|
_ZTISt[0-9][A-Za-z]*;
|
|
|
|
_ZTISt[0-9][0-9][A-Za-z]*;
|
|
|
|
_ZTISt11__timepunctI[cw]E;
|
|
|
|
_ZTISt10__num_base;
|
|
|
|
_ZTISt21__ctype_abstract_baseI[cw]E;
|
|
|
|
_ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
|
|
|
|
|
2003-06-13 07:45:57 +02:00
|
|
|
# typeinfo name
|
2003-03-05 07:02:15 +01:00
|
|
|
_ZTSNSt8ios_base7failureE;
|
|
|
|
_ZTSNSt6locale5facetE;
|
|
|
|
_ZTSS[a-z];
|
|
|
|
_ZTSSt[0-9][A-Za-z]*;
|
|
|
|
_ZTSSt[0-9][0-9][A-Za-z]*;
|
|
|
|
_ZTSSt11__timepunctI[cw]E;
|
|
|
|
_ZTSSt10__num_base;
|
|
|
|
_ZTSSt21__ctype_abstract_baseI[cw]E;
|
|
|
|
_ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
|
2002-02-19 22:47:05 +01:00
|
|
|
|
|
|
|
# function-scope static objects requires a guard variable.
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZGVNSt*;
|
2002-02-15 03:21:33 +01:00
|
|
|
|
2002-02-19 22:47:05 +01:00
|
|
|
# virtual function thunks
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZThn8_NS*;
|
2003-06-16 01:24:00 +02:00
|
|
|
_ZThn16_NS*;
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZTv0_n12_NS*;
|
2003-06-16 01:24:00 +02:00
|
|
|
_ZTv0_n24_NS*;
|
2002-02-19 22:47:05 +01:00
|
|
|
|
2002-02-20 01:58:17 +01:00
|
|
|
# std::__convert_to_v
|
2002-02-14 19:24:13 +01:00
|
|
|
_ZSt14__convert_to_v*;
|
|
|
|
|
2003-01-23 18:21:11 +01:00
|
|
|
# stub functions from libmath
|
|
|
|
sinf;
|
|
|
|
sinl;
|
|
|
|
sinhf;
|
|
|
|
sinhl;
|
|
|
|
cosf;
|
|
|
|
cosl;
|
|
|
|
coshf;
|
|
|
|
coshl;
|
|
|
|
tanf;
|
|
|
|
tanl;
|
|
|
|
tanhf;
|
|
|
|
tanhl;
|
|
|
|
atan2f;
|
|
|
|
atan2l;
|
|
|
|
expf;
|
|
|
|
expl;
|
|
|
|
hypotf;
|
|
|
|
hypotl;
|
|
|
|
hypot;
|
|
|
|
logf;
|
|
|
|
logl;
|
|
|
|
log10f;
|
|
|
|
log10l;
|
|
|
|
powf;
|
|
|
|
powl;
|
|
|
|
sqrtf;
|
|
|
|
sqrtl;
|
|
|
|
copysignf;
|
|
|
|
nan;
|
|
|
|
__signbit;
|
|
|
|
__signbitf;
|
|
|
|
__signbitl;
|
|
|
|
|
2003-06-13 07:45:57 +02:00
|
|
|
# __gnu_cxx::__pool_alloc
|
|
|
|
_ZN9__gnu_cxx12__pool_allocILb1ELi0EE8allocateE[jm];
|
|
|
|
_ZN9__gnu_cxx12__pool_allocILb1ELi0EE10deallocateEPv[jm];
|
|
|
|
|
|
|
|
# __gnu_cxx::stdio_sync_filebuf
|
|
|
|
_ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
|
|
|
|
|
|
|
|
# Needed only when generic cpu's atomicity.h is in use.
|
|
|
|
_ZN9__gnu_cxx17_Atomic_add_mutexE;
|
|
|
|
_ZN9__gnu_cxx22_Atomic_add_mutex_onceE;
|
|
|
|
_ZN9__gnu_cxx31__gthread_atomic_add_mutex_onceEv;
|
|
|
|
|
2003-07-06 06:07:36 +02:00
|
|
|
# DO NOT DELETE THIS LINE. Port-specific symbols, if any, will be here.
|
|
|
|
|
2002-02-14 19:24:13 +01:00
|
|
|
local:
|
|
|
|
*;
|
|
|
|
};
|
2002-02-23 00:45:28 +01:00
|
|
|
|
2003-01-06 22:23:00 +01:00
|
|
|
|
2002-02-23 00:45:28 +01:00
|
|
|
# Symbols in the support library (libsupc++) have their own tag.
|
2003-01-23 18:21:11 +01:00
|
|
|
CXXABI_1.3 {
|
2002-02-23 00:45:28 +01:00
|
|
|
|
|
|
|
global:
|
2002-11-26 02:37:50 +01:00
|
|
|
__cxa_allocate_exception;
|
|
|
|
__cxa_bad_cast;
|
|
|
|
__cxa_bad_typeid;
|
|
|
|
__cxa_begin_catch;
|
|
|
|
__cxa_call_unexpected;
|
|
|
|
__cxa_current_exception_type;
|
|
|
|
__cxa_demangle;
|
|
|
|
__cxa_end_catch;
|
|
|
|
__cxa_free_exception;
|
|
|
|
__cxa_get_globals;
|
|
|
|
__cxa_get_globals_fast;
|
2003-01-23 18:21:11 +01:00
|
|
|
__cxa_guard_abort;
|
|
|
|
__cxa_guard_acquire;
|
|
|
|
__cxa_guard_release;
|
2002-11-26 02:37:50 +01:00
|
|
|
__cxa_pure_virtual;
|
|
|
|
__cxa_rethrow;
|
|
|
|
__cxa_throw;
|
|
|
|
__cxa_vec_cctor;
|
|
|
|
__cxa_vec_cleanup;
|
|
|
|
__cxa_vec_ctor;
|
|
|
|
__cxa_vec_delete2;
|
|
|
|
__cxa_vec_delete3;
|
|
|
|
__cxa_vec_delete;
|
|
|
|
__cxa_vec_dtor;
|
|
|
|
__cxa_vec_new2;
|
|
|
|
__cxa_vec_new3;
|
|
|
|
__cxa_vec_new;
|
2002-02-23 00:45:28 +01:00
|
|
|
__gxx_personality_v0;
|
2002-04-12 01:27:45 +02:00
|
|
|
__gxx_personality_sj0;
|
2002-02-23 00:45:28 +01:00
|
|
|
__dynamic_cast;
|
|
|
|
|
2003-10-09 23:17:11 +02:00
|
|
|
# *_type_info classes, ctor and dtor
|
|
|
|
_ZN10__cxxabiv117__array_type_info*;
|
|
|
|
_ZN10__cxxabiv117__class_type_info*;
|
|
|
|
_ZN10__cxxabiv116__enum_type_info*;
|
|
|
|
_ZN10__cxxabiv120__function_type_info*;
|
|
|
|
_ZN10__cxxabiv123__fundamental_type_info*;
|
|
|
|
_ZN10__cxxabiv117__pbase_type_info*;
|
|
|
|
_ZN10__cxxabiv129__pointer_to_member_type_info*;
|
|
|
|
_ZN10__cxxabiv119__pointer_type_info*;
|
|
|
|
_ZN10__cxxabiv120__si_class_type_info*;
|
|
|
|
_ZN10__cxxabiv121__vmi_class_type_info*;
|
|
|
|
|
|
|
|
# *_type_info classes, member functions
|
|
|
|
_ZNK10__cxxabiv117__class_type_info*;
|
|
|
|
_ZNK10__cxxabiv120__function_type_info*;
|
|
|
|
_ZNK10__cxxabiv117__pbase_type_info*;
|
|
|
|
_ZNK10__cxxabiv129__pointer_to_member_type_info*;
|
|
|
|
_ZNK10__cxxabiv119__pointer_type_info*;
|
|
|
|
_ZNK10__cxxabiv120__si_class_type_info*;
|
|
|
|
_ZNK10__cxxabiv121__vmi_class_type_info*;
|
2003-06-13 07:45:57 +02:00
|
|
|
|
|
|
|
# virtual table
|
|
|
|
_ZTVN10__cxxabiv117__array_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTVN10__cxxabiv117__class_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZTVN10__cxxabiv116__enum_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTVN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv123__fundamental_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZTVN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTVN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTVN10__cxxabiv121__vmi_class_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
|
|
|
|
# typeinfo structure (and some names)
|
|
|
|
_ZTI[a-z];
|
|
|
|
_ZTIP[a-z];
|
|
|
|
_ZTIPK[a-z];
|
|
|
|
_ZTIN10__cxxabiv117__array_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTIN10__cxxabiv117__class_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZTIN10__cxxabiv116__enum_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTIN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv123__fundamental_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
_ZTIN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTIN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTIN10__cxxabiv121__vmi_class_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
|
|
|
|
# typeinfo name
|
|
|
|
_ZTS[a-z];
|
|
|
|
_ZTSP[a-z];
|
|
|
|
_ZTSPK[a-z];
|
2003-10-09 23:17:11 +02:00
|
|
|
_ZTSN10__cxxabiv117__array_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv117__class_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv116__enum_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv120__function_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv123__fundamental_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv117__pbase_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv119__pointer_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv120__si_class_type_infoE;
|
|
|
|
_ZTSN10__cxxabiv121__vmi_class_type_infoE;
|
2003-06-13 07:45:57 +02:00
|
|
|
|
|
|
|
# __gnu_cxx::_verbose_terminate_handler()
|
|
|
|
_ZN9__gnu_cxx27__verbose_terminate_handlerEv;
|
2003-03-05 07:02:15 +01:00
|
|
|
|
2002-02-23 00:45:28 +01:00
|
|
|
local:
|
|
|
|
*;
|
|
|
|
};
|