diff options
author | Benjamin Kosnik <bkoz@redhat.com> | 2013-07-29 15:23:23 -0700 |
---|---|---|
committer | Benjamin Kosnik <bkoz@redhat.com> | 2013-07-29 15:23:23 -0700 |
commit | 02148a005d2258ef426e65083bac1b485803e544 (patch) | |
tree | b7aee6bb1367421c8f11951bd1bf57747aa31ae9 | |
parent | 0a36ea1495579da9f58f3948dd25480c0973f039 (diff) | |
download | gcc-02148a005d2258ef426e65083bac1b485803e544.tar.gz |
2013-07-29 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/vtv_stubs.cc: Guard with __GXX_WEAK__.
-rw-r--r-- | libstdc++-v3/ChangeLog.vtv | 4 | ||||
-rw-r--r-- | libstdc++-v3/acinclude.m4 | 1 | ||||
-rwxr-xr-x | libstdc++-v3/configure | 4 | ||||
-rw-r--r-- | libstdc++-v3/libsupc++/vtv_stubs.cc | 4 |
4 files changed, 9 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog.vtv b/libstdc++-v3/ChangeLog.vtv index f2476935e9d..f4f6ff43eb0 100644 --- a/libstdc++-v3/ChangeLog.vtv +++ b/libstdc++-v3/ChangeLog.vtv @@ -1,5 +1,9 @@ 2013-07-29 Benjamin Kosnik <bkoz@redhat.com> + * libsupc++/vtv_stubs.cc: Guard with __GXX_WEAK__. + +2013-07-29 Benjamin Kosnik <bkoz@redhat.com> + * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): VTV_CXXLINKFLAGS simplification. * scripts/testsuite_flags.in (cxxvtvflags): Use it here. diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index f5320c36169..3f3fc0d2314 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -2303,7 +2303,6 @@ AC_DEFUN([GLIBCXX_ENABLE_VTABLE_VERIFY], [ if test $enable_vtable_verify = yes; then VTV_CXXFLAGS="-fvtable-verify=std" VTV_CXXLINKFLAGS="libvtv/.libs" -# VTV_CXXLINKFLAGS="libvtv/.libs -Wl,-u_vtable_map_vars_start,-u_vtable_map_vars_end" else VTV_CXXFLAGS= VTV_CXXLINKFLAGS= diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index fb96d394a61..cca74d96f16 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -17413,8 +17413,8 @@ $as_echo "$enable_vtable_verify" >&6; } if test $enable_vtable_verify = yes; then VTV_CXXFLAGS="-fvtable-verify=std" -# VTV_CXXLINKFLAGS="libvtv/.libs" - VTV_CXXLINKFLAGS="libvtv/.libs -Wl,-u_vtable_map_vars_start,-u_vtable_map_vars_end" + VTV_CXXLINKFLAGS="libvtv/.libs" +# VTV_CXXLINKFLAGS="libvtv/.libs -Wl,-u_vtable_map_vars_start,-u_vtable_map_vars_end" else VTV_CXXFLAGS= VTV_CXXLINKFLAGS= diff --git a/libstdc++-v3/libsupc++/vtv_stubs.cc b/libstdc++-v3/libsupc++/vtv_stubs.cc index fba1e276991..a41d943f31f 100644 --- a/libstdc++-v3/libsupc++/vtv_stubs.cc +++ b/libstdc++-v3/libsupc++/vtv_stubs.cc @@ -37,7 +37,8 @@ #include <cstddef> -// Declare as weak for libsupc++. +// Declare as weak for libsupc++, strong definitions are in libvtv. +#if __GXX_WEAK__ extern "C" void __VLTChangePermission(int) __attribute__((weak)); @@ -64,6 +65,7 @@ __VLTRegisterPairDebug(void**, const void*, std::size_t, const void*, const void* __VLTVerifyVtablePointerDebug(void**, const void*, const char*, const char*) __attribute__((weak)); +#endif // Stub definitions. extern "C" |