summaryrefslogtreecommitdiff
path: root/libstdc++-v3/src
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2001-02-06 06:36:18 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2001-02-06 06:36:18 +0000
commit132cb60cd6519a67747493c13b3c6a2b117c06b1 (patch)
tree1832ae41b6bf30d52e05ad77b2e52525c6276203 /libstdc++-v3/src
parentb3e9ad4bdda84d9577f58590fdc2b4e0e72560eb (diff)
downloadgcc-132cb60cd6519a67747493c13b3c6a2b117c06b1.tar.gz
* include/bits/locale_facets.tcc: Remove `static' keyword on
function definitions. * include/bits/std_streambuf.h: Likewise. * src/Makefile.am: Remove use of -fimplicit-templates. * src/Makefile.in: Regenerated. * src/locale-inst.cc: Explicitly instantiate more functions. * src/msic-inst.cc: Likewise. * src/string-inst.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39481 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/src')
-rw-r--r--libstdc++-v3/src/Makefile.am14
-rw-r--r--libstdc++-v3/src/Makefile.in12
-rw-r--r--libstdc++-v3/src/locale-inst.cc26
-rw-r--r--libstdc++-v3/src/misc-inst.cc66
-rw-r--r--libstdc++-v3/src/string-inst.cc12
5 files changed, 116 insertions, 14 deletions
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index 986f319ebae..4bad5210b85 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -21,7 +21,7 @@
## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
## USA.
-## $Id: Makefile.am,v 1.67 2001/02/03 09:01:44 bkoz Exp $
+## $Id: Makefile.am,v 1.68 2001/02/06 06:32:01 bkoz Exp $
AUTOMAKE_OPTIONS = 1.3 gnits
MAINT_CHARSET = latin1
@@ -298,13 +298,13 @@ myinstallheaders:
# for things like vptrs, type_info bits, etc. when using
# -fno-implicit-templates.
misc-inst.o: misc-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
+ $(CXXCOMPILE) -c $<
misc-inst.lo: misc-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
+ $(LTCXXCOMPILE) -c $<
locale-inst.o: locale-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
+ $(CXXCOMPILE) -c $<
locale-inst.lo: locale-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
+ $(LTCXXCOMPILE) -c $<
# Use special rules for the deprecated source files so that they find
# deprecated include files.
@@ -315,9 +315,9 @@ strstream.o: strstream.cc
# Make wstring-inst.cc from string-inst.cc
wstring-inst.o: string-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
+ $(CXXCOMPILE) -c -DC=wchar_t $< -o $@
wstring-inst.lo: string-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
+ $(LTCXXCOMPILE) -c -DC=wchar_t $< -o $@
# Alexandre put this in here for some libtool-related reason.
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index d1c6a7bd2c9..a1547862a3c 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -567,13 +567,13 @@ myinstallheaders:
# for things like vptrs, type_info bits, etc. when using
# -fno-implicit-templates.
misc-inst.o: misc-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
+ $(CXXCOMPILE) -c $<
misc-inst.lo: misc-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
+ $(LTCXXCOMPILE) -c $<
locale-inst.o: locale-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
+ $(CXXCOMPILE) -c $<
locale-inst.lo: locale-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
+ $(LTCXXCOMPILE) -c $<
# Use special rules for the deprecated source files so that they find
# deprecated include files.
@@ -584,9 +584,9 @@ strstream.o: strstream.cc
# Make wstring-inst.cc from string-inst.cc
wstring-inst.o: string-inst.cc
- $(CXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
+ $(CXXCOMPILE) -c -DC=wchar_t $< -o $@
wstring-inst.lo: string-inst.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
+ $(LTCXXCOMPILE) -c -DC=wchar_t $< -o $@
# Alexandre put this in here for some libtool-related reason.
all: libstdc++.INC
diff --git a/libstdc++-v3/src/locale-inst.cc b/libstdc++-v3/src/locale-inst.cc
index c67dd040b15..08c6dacf569 100644
--- a/libstdc++-v3/src/locale-inst.cc
+++ b/libstdc++-v3/src/locale-inst.cc
@@ -282,5 +282,31 @@ namespace std {
locale::facet**
fill_n<locale::facet**, unsigned long, locale::facet*>
(locale::facet**, unsigned long, locale::facet* const&);
+
+ template
+ const numpunct<char>&
+ use_facet(const locale&);
+
+ template
+ void __sink_unused_warning<locale::facet*>(locale::facet*);
+
+ template
+ __normal_iterator<locale::facet**,
+ vector<locale::facet*> >
+ fill_n(__normal_iterator<locale::facet**,
+ vector<locale::facet*> >,
+ unsigned, locale::facet* const&);
+
+ template
+ void
+ fill (__normal_iterator<locale::facet**,
+ vector<locale::facet*> >,
+ __normal_iterator<locale::facet**,
+ vector<locale::facet*> >,
+ locale::facet* const&);
+
+ template
+ const collate<char>&
+ use_facet<collate<char> >(const locale&);
} //std
diff --git a/libstdc++-v3/src/misc-inst.cc b/libstdc++-v3/src/misc-inst.cc
index 4bab4930336..5556ebf0296 100644
--- a/libstdc++-v3/src/misc-inst.cc
+++ b/libstdc++-v3/src/misc-inst.cc
@@ -1,6 +1,6 @@
// Explicit instantiation file.
-// Copyright (C) 1997-1999, 2000 Free Software Foundation, Inc.
+// Copyright (C) 1997-1999, 2000, 2001 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
@@ -43,6 +43,7 @@
#include <bits/basic_ios.tcc>
#include <bits/std_istream.h>
#include <bits/std_ostream.h>
+#include <bits/std_string.h>
// NB: unnecessary if the .h headers include these
#ifndef _GLIBCPP_FULLY_COMPLIANT_HEADERS
@@ -239,6 +240,69 @@ namespace std {
(vector<string>::const_iterator, vector<string>::const_iterator,
string*, _Bool<false>);
+ template
+ void
+ __sink_unused_warning<char>(char);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ void
+ __sink_unused_warning<wchar_t>(wchar_t);
+#endif
+
+ template
+ void
+ __sink_unused_warning<ostreambuf_iterator<char> >
+ (ostreambuf_iterator<char>);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ void
+ __sink_unused_warning<ostreambuf_iterator<wchar_t> >
+ (ostreambuf_iterator<wchar_t>);
+#endif
+
+ template
+ void
+ _S_pad_char (basic_ios<char>&, char*, const char*, int, int);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ void
+ _S_pad_char (basic_ios<wchar_t>&, wchar_t*, const wchar_t*, int, int);
+#endif
+
+ template
+ ostreambuf_iterator<char>
+ _S_pad_numeric (ostreambuf_iterator<char>, _Ios_Fmtflags, char, int,
+ const char*, const char*, const char*);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ ostreambuf_iterator<wchar_t>
+ _S_pad_numeric (ostreambuf_iterator<wchar_t>, _Ios_Fmtflags, wchar_t, int,
+ const wchar_t*, const wchar_t*, const wchar_t*);
+#endif
+
+ template
+ ostreambuf_iterator<char>
+ _S_output_float (ostreambuf_iterator<char>, ios_base&, char,
+ const char*, unsigned);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ ostreambuf_iterator<wchar_t>
+ _S_output_float (ostreambuf_iterator<wchar_t>, ios_base&, wchar_t,
+ const wchar_t*, unsigned);
+#endif
+
+ template
+ int
+ _S_copy_streambufs(basic_ios<char>&,
+ basic_streambuf<char>*,
+ basic_streambuf<char>*);
+#ifdef _GLIBCPP_USE_WCHAR_T
+ template
+ int
+ _S_copy_streambufs(basic_ios<wchar_t>&,
+ basic_streambuf<wchar_t>*,
+ basic_streambuf<wchar_t>*);
+#endif
} //std
diff --git a/libstdc++-v3/src/string-inst.cc b/libstdc++-v3/src/string-inst.cc
index 70ee21eadcf..920311254ed 100644
--- a/libstdc++-v3/src/string-inst.cc
+++ b/libstdc++-v3/src/string-inst.cc
@@ -71,6 +71,9 @@ namespace std
S::_S_construct<S::iterator>
(S::iterator, S::iterator, const allocator<C>&, forward_iterator_tag);
+ template
+ S::basic_string(C*, C*, const allocator<C>&);
+
template
S::basic_string(S::iterator, S::iterator, const allocator<C>&);
@@ -87,6 +90,15 @@ namespace std
C*
S::_S_construct(const C*, const C*, const allocator<C>&,
forward_iterator_tag);
+
+ template
+ C*
+ S::_S_construct (C*, C*, const allocator<C>&,
+ forward_iterator_tag);
+
+ template
+ void
+ __destroy_aux<S*>(S*, S*, _Bool<false>);
} // namespace std