diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-06 06:36:18 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-06 06:36:18 +0000 |
commit | 132cb60cd6519a67747493c13b3c6a2b117c06b1 (patch) | |
tree | 1832ae41b6bf30d52e05ad77b2e52525c6276203 /libstdc++-v3/src | |
parent | b3e9ad4bdda84d9577f58590fdc2b4e0e72560eb (diff) | |
download | gcc-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.am | 14 | ||||
-rw-r--r-- | libstdc++-v3/src/Makefile.in | 12 | ||||
-rw-r--r-- | libstdc++-v3/src/locale-inst.cc | 26 | ||||
-rw-r--r-- | libstdc++-v3/src/misc-inst.cc | 66 | ||||
-rw-r--r-- | libstdc++-v3/src/string-inst.cc | 12 |
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 |