aboutsummaryrefslogblamecommitdiff
path: root/gnu/lib/libsupc++/Version.map
blob: 31e6cc61f6efc8e2f14434c5368ca76a44c63212 (plain) (tree)































































































































                                                                               





                            
             


                           

                                  



                         




                            






                                  






                                    
                                    



                                         
                                         



                                  



                                     
      

  







                                        




                            
## Linker script for GNU versioning (GNU ld 2.13.91+ only.)
##
## Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
## Free Software Foundation, Inc.
##
## 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
## USA.

## $FreeBSD$


# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.3 {

  global:
    __cxa_allocate_exception;
    __cxa_bad_cast;
    __cxa_bad_typeid;
    __cxa_begin_catch;
    __cxa_begin_cleanup;
    __cxa_call_unexpected;
    __cxa_current_exception_type;
    __cxa_demangle;
    __cxa_end_catch;
    __cxa_end_cleanup;
    __cxa_free_exception;
    __cxa_get_globals;
    __cxa_get_globals_fast;
    __cxa_guard_abort;
    __cxa_guard_acquire;
    __cxa_guard_release;
    __cxa_pure_virtual;
    __cxa_rethrow;
    __cxa_throw;
    __cxa_type_match;
    __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;
    __gxx_personality_v0;
    __gxx_personality_sj0;
    __dynamic_cast;

    # *_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*;

    # virtual table
    _ZTVN10__cxxabiv117__array_type_infoE;
    _ZTVN10__cxxabiv117__class_type_infoE;
    _ZTVN10__cxxabiv116__enum_type_infoE;
    _ZTVN10__cxxabiv120__function_type_infoE;
    _ZTVN10__cxxabiv123__fundamental_type_infoE;
    _ZTVN10__cxxabiv117__pbase_type_infoE;
    _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
    _ZTVN10__cxxabiv119__pointer_type_infoE;
    _ZTVN10__cxxabiv120__si_class_type_infoE;
    _ZTVN10__cxxabiv121__vmi_class_type_infoE;

    # typeinfo structure (and some names)
    _ZTI[a-fh-z];
    _ZTIP[a-fh-z];
    _ZTIPK[a-fh-z];
    _ZTIN10__cxxabiv117__array_type_infoE;
    _ZTIN10__cxxabiv117__class_type_infoE;
    _ZTIN10__cxxabiv116__enum_type_infoE;
    _ZTIN10__cxxabiv120__function_type_infoE;
    _ZTIN10__cxxabiv123__fundamental_type_infoE;
    _ZTIN10__cxxabiv117__pbase_type_infoE;
    _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
    _ZTIN10__cxxabiv119__pointer_type_infoE;
    _ZTIN10__cxxabiv120__si_class_type_infoE;
    _ZTIN10__cxxabiv121__vmi_class_type_infoE;

    # typeinfo name
    _ZTS[a-fh-z];
    _ZTSP[a-fh-z];
    _ZTSPK[a-fh-z];
    _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;

    # __gnu_cxx::_verbose_terminate_handler()
    _ZN9__gnu_cxx27__verbose_terminate_handlerEv;

  local:
    *;
};

GLIBCXX_3.4 {
    # operator new and new[]
    _Zna[jm];
    _Zna[jm]RKSt9nothrow_t;
    _Znw[jm];
    _Znw[jm]RKSt9nothrow_t;

    # operator delete and delete[]
    _ZdaPv;
    _ZdaPvRKSt9nothrow_t;
    _ZdlPv;
    _ZdlPvRKSt9nothrow_t;
    extern "C++" {
      std::set_new_handler*;
      std::set_terminate*;
      std::set_unexpected*;

      "std::unexpected()";
      "std::get_terminate()";
      "std::get_unexpected()";
      "std::uncaught_exception()";
      "std::terminate()";


      std::bad_alloc;
      std::bad_cast;
      std::exception*;

      "typeinfo for std::bad_alloc";
      "typeinfo for std::bad_cast";
      "typeinfo for std::exception";
      "typeinfo for std::type_info";

      "typeinfo name for std::bad_alloc";
      "typeinfo name for std::bad_cast";
      "typeinfo name for std::exception";
      "typeinfo name for std::type_info";

      "vtable for std::bad_alloc";
      "vtable for std::bad_cast";
      "vtable for std::exception";
      "vtable for std::type_info";

      std::type_info::__*;
      "std::type_info::~type_info()";
    };
};

GLIBCXX_3.4.9 {
    extern "C++" {
        "std::bad_alloc::what() const";
        "std::bad_cast::what() const";
        "std::bad_typeid::what() const";
    };
} GLIBCXX_3.4;

CXXABI_1.3.1 {

    __cxa_get_exception_ptr;

} CXXABI_1.3;