]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Add missing explicit instantiation for std::lower_bound template
authorDodji Seketeli <dodji@redhat.com>
Wed, 6 Feb 2013 08:18:26 +0000 (08:18 +0000)
committerDodji Seketeli <dodji@gcc.gnu.org>
Wed, 6 Feb 2013 08:18:26 +0000 (09:18 +0100)
Since commit r195676[1], it looks like
libstdc++-v3/src/c++11/hashtable_c++0x.cc is missing an explicit
instantiation for std::lower_bound.  This leads to libstdc++.so having
the symbol for that (missing) instantiation be undefined, thus
preventing executables from being linked with libstdc++.

The patchlet below seems to fixed the issue for me.

Boostrapped and tested on x86_64-unknown-linux-gnu.

[1]:

    commit bc36b44c7cb0e5e97ac807b8fb17507e0fb09008
    Author: fdumont <fdumont@138bc75d-0d04-0410-961f-82ee72b054a4>
    Date:   Fri Feb 1 20:44:41 2013 +0000

2013-02-01  François Dumont  <fdumont@gcc.gnu.org>

    * include/bits/hashtable_policy.h
    (_Prime_rehash_policy::_M_next_bkt)
    (_Prime_rehash_policy::_M_need_rehash): Move definition...
    * src/c++11/hashtable_c++0x.cc: ... here.
    * src/shared/hashtable-aux.cc: Remove c++config.h include.
    * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
    symbols.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195676 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog

* libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
missing instantiation for std::lower_bound template.

From-SVN: r195783

libstdc++-v3/ChangeLog
libstdc++-v3/src/c++11/hashtable_c++0x.cc

index dc96107a1f9bd5896305a7bfaae2dfa7895e5201..a898d7773728ed618d310191ac94390761646dae 100644 (file)
@@ -1,3 +1,9 @@
+2013-02-04  Dodji Seketeli  <dodji@redhat.com>
+
+       Add missing explicit instantiation for std::lower_bound template
+       * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
+       missing instantiation for std::lower_bound template.
+
 2013-02-04  François Dumont  <fdumont@gcc.gnu.org>
 
        * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
index 7617c58576b3b380b517e9e6786c2f44b7b056a9..b6a56bcc809cc34fa155626c228f10f43ef0477d 100644 (file)
@@ -94,4 +94,11 @@ namespace __detail
 
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace __detail
+
+ // Instantiations.
+ template
+ const unsigned long*
+ lower_bound<const unsigned long*, size_t>(const unsigned long*,
+                                          const unsigned long*,
+                                          const size_t&);
 } // namespace std