From b9e8095bd7c7b1492baf175e1ebf336dc3ff6e4d Mon Sep 17 00:00:00 2001 From: bkoz Date: Fri, 21 Apr 2000 20:33:34 +0000 Subject: 2000-04-21 Benjamin Kosnik * libstdc++-v3: New directory. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33317 138bc75d-0d04-0410-961f-82ee72b054a4 --- libstdc++-v3/src/misc-inst.cc | 210 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 210 insertions(+) create mode 100644 libstdc++-v3/src/misc-inst.cc (limited to 'libstdc++-v3/src/misc-inst.cc') diff --git a/libstdc++-v3/src/misc-inst.cc b/libstdc++-v3/src/misc-inst.cc new file mode 100644 index 00000000000..3d31c71faf7 --- /dev/null +++ b/libstdc++-v3/src/misc-inst.cc @@ -0,0 +1,210 @@ +// Explicit instantiation file. + +// Copyright (C) 1997-1999 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 +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. + +// As a special exception, you may use this file as part of a free software +// library without restriction. Specifically, if other files instantiate +// templates or use macros or inline functions from this file, or you compile +// this file and link it with other files to produce an executable, this +// file does not by itself cause the resulting executable to be covered by +// the GNU General Public License. This exception does not however +// invalidate any other reasons why the executable file might be covered by +// the GNU General Public License. + +// +// ISO C++ 14882: +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// NB: unnecessary if the .h headers include these +#ifndef _GLIBCPP_FULLY_COMPLIANT_HEADERS +#include +#include +#include +#include +#include +#endif + +namespace std { + + // + // streambuf + // + template class basic_streambuf; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_streambuf; +#endif + + + // + // stringstream + // + template class basic_stringbuf; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_stringbuf; +#endif + + + // + // fstream + // + template class basic_filebuf >; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_filebuf >; +#endif + + + // + // basic_ios + // + template class basic_ios; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_ios; +#endif + + + // + // istream + // + template class basic_istream; + template istream& ws(istream&); + template istream& operator>>(istream&, char&); + template istream& operator>>(istream&, unsigned char&); + template istream& operator>>(istream&, signed char&); + template istream& operator>>(istream&, char*); + template istream& operator>>(istream&, unsigned char*); + template istream& operator>>(istream&, signed char*); +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_istream; + template wistream& ws(wistream&); + template wistream& operator>>(wistream&, wchar_t&); + template wistream& operator>>(wistream&, wchar_t*); +#endif + + + // + // ostream + // + template class basic_ostream; + template ostream& endl(ostream&); + template ostream& ends(ostream&); + template ostream& flush(ostream&); + template ostream& operator<<(ostream&, char); + template ostream& operator<<(ostream&, unsigned char); + template ostream& operator<<(ostream&, signed char); + template ostream& operator<<(ostream&, const char*); + template ostream& operator<<(ostream&, const unsigned char*); + template ostream& operator<<(ostream&, const signed char*); + // template ostream& operator<<(ostream&, _Setfill); + // template ostream& operator<<(ostream&, _Setw); + // template _Setfill setfill(char); +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_ostream; + template wostream& endl(wostream&); + template wostream& ends(wostream&); + template wostream& flush(wostream&); + template wostream& operator<<(wostream&, wchar_t); + template wostream& operator<<(wostream&, char); + template wostream& operator<<(wostream&, const wchar_t*); + template wostream& operator<<(wostream&, const char*); + // template wostream& operator<<(wostream&, _Setfill); + // template wostream& operator<<(wostream&, _Setw); + // template _Setfill setfill(wchar_t); +#endif + + + // + // iostream + // + template class basic_iostream; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_iostream; +#endif + + + // + // istringstream + // + template class basic_istringstream; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_istringstream; +#endif + + + // + // ostringstream + // + template class basic_ostringstream; +#ifdef _GLIBCPP_USE_WCHAR_T + template class basic_ostringstream; +#endif + + + // + // algorithm + // + typedef _Char_traits_match > char_match; + + template + const char* + find_if + (const char *, const char *, char_match, random_access_iterator_tag); + +#ifdef _GLIBCPP_USE_WCHAR_T + typedef _Char_traits_match > wchar_match; + + template const wchar_t* + find_if + (const wchar_t*, const wchar_t*, wchar_match, random_access_iterator_tag); +#endif + + template + string* + __uninitialized_fill_n_aux + (string*, size_t, string const &, _Bool); + + template + string* + __uninitialized_copy_aux::const_iterator, string *> + (vector::const_iterator, vector::const_iterator, + string*, _Bool); + +} //std + + + + + + + + + + -- cgit v1.2.1