2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 Feb 2013 00:39:38 +0000 (00:39 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 Feb 2013 00:39:38 +0000 (00:39 +0000)
* src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
Use -fimplicit-templates.
* src/c++11/Makefile.in: Regenerate.
* src/c++11/hashtable_c++0x.cc: Remove instantiation for
std::lower_bound template.

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

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

index 096fd68..56dddcd 100644 (file)
@@ -1,3 +1,11 @@
+2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
+       Use -fimplicit-templates.
+       * src/c++11/Makefile.in: Regenerate.
+       * src/c++11/hashtable_c++0x.cc: Remove instantiation for
+       std::lower_bound template.
+
 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
 
        * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
index 89ee335..e7b48ac 100644 (file)
@@ -60,6 +60,13 @@ vpath % $(top_srcdir)/src/c++11
 
 libc__11convenience_la_SOURCES = $(sources)  $(inst_sources)
 
+# Use special rules for the hashtable.cc file so that all
+# the generated template functions are also instantiated. 
+hashtable_c++0x.lo: hashtable_c++0x.cc
+       $(LTCXXCOMPILE) -fimplicit-templates -c $<
+hashtable_c++0x.o: hashtable_c++0x.cc
+       $(CXXCOMPILE) -fimplicit-templates -c $<
+
 # AM_CXXFLAGS needs to be in each subdirectory so that it can be
 # modified in a per-library or per-sub-library way.  Need to manually
 # set this option because CONFIG_CXXFLAGS has to be after
index 793bbae..a410748 100644 (file)
@@ -627,6 +627,13 @@ uninstall-am:
 
 vpath % $(top_srcdir)/src/c++11
 
+# Use special rules for the hashtable.cc file so that all
+# the generated template functions are also instantiated. 
+hashtable_c++0x.lo: hashtable_c++0x.cc
+       $(LTCXXCOMPILE) -fimplicit-templates -c $<
+hashtable_c++0x.o: hashtable_c++0x.cc
+       $(CXXCOMPILE) -fimplicit-templates -c $<
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
index b6a56bc..7617c58 100644 (file)
@@ -94,11 +94,4 @@ 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