From 6fbcd2e574071e9cfd1c53097a10ec6cdbc79ea6 Mon Sep 17 00:00:00 2001 From: Benjamin Kosnik Date: Sun, 18 Dec 2005 08:08:07 +0000 Subject: re PR libstdc++/25472 (--disable-hosted-libstdcxx does not work) 2005-12-17 Benjamin Kosnik * src/io-inst.cc: Separate instantiations into... * src/ios-inst.cc: .. this. * src/iostream-inst.cc: ... and this. * src/Makefile.am (sources): Update. * src/Makefile.in: Regenerate. 2005-12-17 Benjamin Kosnik PR libstdc++/25472 * include/c_std/std_cstdlib.h: Fix for freestanding. 2005-12-17 Benjamin Kosnik * testsuite/libstdc++-dg/normal.exp: Rename to.. * testsuite/libstdc++-dg/conformance.exp: ... this. From-SVN: r108743 --- libstdc++-v3/src/Makefile.am | 3 +- libstdc++-v3/src/Makefile.in | 13 +++++---- libstdc++-v3/src/io-inst.cc | 59 --------------------------------------- libstdc++-v3/src/ios-inst.cc | 44 +++++++++++++++++++++++++++++ libstdc++-v3/src/iostream-inst.cc | 49 ++++++++++++++++++++++++++++++++ 5 files changed, 102 insertions(+), 66 deletions(-) delete mode 100644 libstdc++-v3/src/io-inst.cc create mode 100644 libstdc++-v3/src/ios-inst.cc create mode 100644 libstdc++-v3/src/iostream-inst.cc (limited to 'libstdc++-v3/src') diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am index 113f2dc..b7cc1dd 100644 --- a/libstdc++-v3/src/Makefile.am +++ b/libstdc++-v3/src/Makefile.am @@ -144,7 +144,8 @@ sources = \ concept-inst.cc \ fstream-inst.cc \ ext-inst.cc \ - io-inst.cc \ + ios-inst.cc \ + iostream-inst.cc \ istream-inst.cc \ istream.cc \ locale-inst.cc \ diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in index f285e89..c3a9d6e 100644 --- a/libstdc++-v3/src/Makefile.in +++ b/libstdc++-v3/src/Makefile.in @@ -70,11 +70,11 @@ am__objects_3 = bitmap_allocator.lo pool_allocator.lo mt_allocator.lo \ list.lo locale.lo locale_init.lo locale_facets.lo \ localename.lo stdexcept.lo strstream.lo tree.lo \ allocator-inst.lo concept-inst.lo fstream-inst.lo ext-inst.lo \ - io-inst.lo istream-inst.lo istream.lo locale-inst.lo \ - locale-misc-inst.lo misc-inst.lo ostream-inst.lo \ - sstream-inst.lo streambuf-inst.lo streambuf.lo string-inst.lo \ - valarray-inst.lo wlocale-inst.lo wstring-inst.lo \ - $(am__objects_1) $(am__objects_2) + ios-inst.lo iostream-inst.lo istream-inst.lo istream.lo \ + locale-inst.lo locale-misc-inst.lo misc-inst.lo \ + ostream-inst.lo sstream-inst.lo streambuf-inst.lo streambuf.lo \ + string-inst.lo valarray-inst.lo wlocale-inst.lo \ + wstring-inst.lo $(am__objects_1) $(am__objects_2) am_libstdc___la_OBJECTS = $(am__objects_3) libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) @@ -334,7 +334,8 @@ sources = \ concept-inst.cc \ fstream-inst.cc \ ext-inst.cc \ - io-inst.cc \ + ios-inst.cc \ + iostream-inst.cc \ istream-inst.cc \ istream.cc \ locale-inst.cc \ diff --git a/libstdc++-v3/src/io-inst.cc b/libstdc++-v3/src/io-inst.cc deleted file mode 100644 index c6f59d6..0000000 --- a/libstdc++-v3/src/io-inst.cc +++ /dev/null @@ -1,59 +0,0 @@ -// Explicit instantiation file. - -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 -// 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, -// 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 - -namespace std -{ - // basic_ios - template class basic_ios; -#ifdef _GLIBCXX_USE_WCHAR_T - template class basic_ios; -#endif - - // iomanip - template class _Setfill; - template _Setfill setfill(char); -#ifdef _GLIBCXX_USE_WCHAR_T - template class _Setfill; - template _Setfill setfill(wchar_t); -#endif - - // iostream - template class basic_iostream; -#ifdef _GLIBCXX_USE_WCHAR_T - template class basic_iostream; -#endif -} // namespace std diff --git a/libstdc++-v3/src/ios-inst.cc b/libstdc++-v3/src/ios-inst.cc new file mode 100644 index 0000000..83996f9 --- /dev/null +++ b/libstdc++-v3/src/ios-inst.cc @@ -0,0 +1,44 @@ +// Explicit instantiation file. + +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 +// 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// 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 + +namespace std +{ + template class basic_ios; + +#ifdef _GLIBCXX_USE_WCHAR_T + template class basic_ios; +#endif +} diff --git a/libstdc++-v3/src/iostream-inst.cc b/libstdc++-v3/src/iostream-inst.cc new file mode 100644 index 0000000..9f389e6 --- /dev/null +++ b/libstdc++-v3/src/iostream-inst.cc @@ -0,0 +1,49 @@ +// Explicit instantiation file. + +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 +// 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// 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 + +namespace std +{ + template class _Setfill; + template _Setfill setfill(char); + template class basic_iostream; + +#ifdef _GLIBCXX_USE_WCHAR_T + template class _Setfill; + template _Setfill setfill(wchar_t); + template class basic_iostream; +#endif +} -- cgit v1.1