diff mbox series

Remove greedy wildcards from libstdc++ linker script

Message ID 20191002155232.GA10584@redhat.com
State New
Headers show
Series Remove greedy wildcards from libstdc++ linker script | expand

Commit Message

Jonathan Wakely Oct. 2, 2019, 3:52 p.m. UTC
The only symbols matched by std::e[a-q]* and std::e[s-z]* that are
supposed to be in the GLIBCXX_3.4 version are std::exception::* and
std::endl and std::ends. The latter two already have explicit patterns
matching them, so we just need to match std::exception::*.

This change ensures that any new symbols with a return type of
std::enable_if<...> are not added to the GLIBCXX_3.4 version.

	* config/abi/pre/gnu.ver: Tighten up greedy wildcards.

Tested powerpc64le-linux and x86_64-linux, committed to trunk.
commit 2f33800e0b630a6e719a9f4c76934dfcb872bc7f
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Wed Oct 2 15:49:18 2019 +0100

    Remove greedy wildcards from libstdc++ linker script
    
    The only symbols matched by std::e[a-q]* and std::e[s-z]* that are
    supposed to be in the GLIBCXX_3.4 version are std::exception::* and
    std::endl and std::ends. The latter two already have explicit patterns
    matching them, so we just need to match std::exception::*.
    
    This change ensures that any new symbols with a return type of
    std::enable_if<...> are not added to the GLIBCXX_3.4 version.
    
            * config/abi/pre/gnu.ver: Tighten up greedy wildcards.
diff mbox series

Patch

diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver
index 07a00036827..e61fbe0ad66 100644
--- a/libstdc++-v3/config/abi/pre/gnu.ver
+++ b/libstdc++-v3/config/abi/pre/gnu.ver
@@ -80,9 +80,8 @@  GLIBCXX_3.4 {
 #     std::domain_error::d*;
 #     std::domain_error::~d*;
       std::d[p-z]*;
-      std::e[a-q]*;
       std::error[^_]*;
-      std::e[s-z]*;
+      std::exception::*;
       std::gslice*;
       std::h[^a]*;
       std::i[a-m]*;