summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-31 16:06:12 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-31 16:06:12 +0000
commitd6f0fa250fd41cdd85a536717a7ed542f87d57c5 (patch)
tree32b1e02eeaa654ac22e47a479842183540abb176
parent5c9d7b338c51887cfdc0e0b6de187dff31b9b3c9 (diff)
downloadgcc-d6f0fa250fd41cdd85a536717a7ed542f87d57c5.tar.gz
2011-03-31 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/48382 * src/ctype.cc: Do not include <bits/ctype_noninline.h>. * src/Makefile.am: Add ctype_configure_char.cc to host_sources. * src/Makefile.in: Regenerate. * include/Makefile.am: Remove ctype_noninline.h from host_headers. * include/Makefile.in: Regenerate. * doc/xml/manual/internals.xml: Update. * config/os/newlib/ctype_noninline.h: Fixup and rename to... * config/os/newlib/ctype_configure_char.cc: ... this. * config/os/aix/ctype_noninline.h: Likewise. * config/os/aix/ctype_configure_char.cc: Likewise. * config/os/vxworks/ctype_noninline.h: Likewise. * config/os/vxworks/ctype_configure_char.cc * config/os/hpux/ctype_noninline.h: Likewise. * config/os/hpux/ctype_configure_char.cc: Likewise. * config/os/gnu-linux/ctype_noninline.h: Likewise. * config/os/gnu-linux/ctype_configure_char.cc: Likewise. * config/os/mingw32/ctype_noninline.h: Likewise. * config/os/mingw32/ctype_configure_char.cc: Likewise. * config/os/tpf/ctype_noninline.h: Likewise. * config/os/tpf/ctype_configure_char.cc: Likewise. * config/os/uclibc/ctype_noninline.h: Likewise. * config/os/uclibc/ctype_configure_char.cc: Likewise. * config/os/bionic/ctype_noninline.h: Likewise. * config/os/bionic/ctype_configure_char.cc: Likewise. * config/os/djgpp/ctype_noninline.h: Likewise. * config/os/djgpp/ctype_configure_char.cc: Likewise. * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise. * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise. * config/os/bsd/netbsd/ctype_noninline.h: Likewise. * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise. * config/os/bsd/darwin/ctype_noninline.h: Likewise. * config/os/bsd/darwin/ctype_configure_char.cc: Likewise. * config/os/bsd/freebsd/ctype_noninline.h: Likewise. * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise. * config/os/irix/irix6.5/ctype_noninline.h: Likewise. * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise. * config/os/generic/ctype_noninline.h: Likewise. * config/os/generic/ctype_configure_char.cc: Likewise. * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise. * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171790 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libstdc++-v3/ChangeLog44
-rw-r--r--libstdc++-v3/config/os/aix/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/aix/ctype_noninline.h)18
-rw-r--r--libstdc++-v3/config/os/bionic/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/bionic/ctype_noninline.h)17
-rw-r--r--libstdc++-v3/config/os/bsd/darwin/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/bsd/darwin/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/bsd/freebsd/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/bsd/freebsd/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/bsd/netbsd/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/bsd/netbsd/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/djgpp/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/djgpp/ctype_noninline.h)19
-rw-r--r--libstdc++-v3/config/os/generic/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/generic/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/gnu-linux/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/gnu-linux/ctype_noninline.h)20
-rw-r--r--libstdc++-v3/config/os/hpux/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/hpux/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/irix/irix6.5/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/irix/irix6.5/ctype_noninline.h)19
-rw-r--r--libstdc++-v3/config/os/mingw32/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/mingw32/ctype_noninline.h)25
-rw-r--r--libstdc++-v3/config/os/newlib/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/newlib/ctype_noninline.h)18
-rw-r--r--libstdc++-v3/config/os/qnx/qnx6.1/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/qnx/qnx6.1/ctype_noninline.h)20
-rw-r--r--libstdc++-v3/config/os/solaris/solaris2.7/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/solaris/solaris2.7/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/tpf/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/tpf/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/uclibc/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/uclibc/ctype_noninline.h)21
-rw-r--r--libstdc++-v3/config/os/vxworks/ctype_configure_char.cc (renamed from libstdc++-v3/config/os/vxworks/ctype_noninline.h)19
-rw-r--r--libstdc++-v3/doc/xml/manual/internals.xml7
-rw-r--r--libstdc++-v3/include/Makefile.am1
-rw-r--r--libstdc++-v3/include/Makefile.in1
-rw-r--r--libstdc++-v3/src/Makefile.am4
-rw-r--r--libstdc++-v3/src/Makefile.in8
-rw-r--r--libstdc++-v3/src/ctype.cc7
24 files changed, 289 insertions, 126 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index e7cfb3240f7..26834e5f928 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,47 @@
+2011-03-31 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/48382
+ * src/ctype.cc: Do not include <bits/ctype_noninline.h>.
+ * src/Makefile.am: Add ctype_configure_char.cc to host_sources.
+ * src/Makefile.in: Regenerate.
+ * include/Makefile.am: Remove ctype_noninline.h from host_headers.
+ * include/Makefile.in: Regenerate.
+ * doc/xml/manual/internals.xml: Update.
+ * config/os/newlib/ctype_noninline.h: Fixup and rename to...
+ * config/os/newlib/ctype_configure_char.cc: ... this.
+ * config/os/aix/ctype_noninline.h: Likewise.
+ * config/os/aix/ctype_configure_char.cc: Likewise.
+ * config/os/vxworks/ctype_noninline.h: Likewise.
+ * config/os/vxworks/ctype_configure_char.cc
+ * config/os/hpux/ctype_noninline.h: Likewise.
+ * config/os/hpux/ctype_configure_char.cc: Likewise.
+ * config/os/gnu-linux/ctype_noninline.h: Likewise.
+ * config/os/gnu-linux/ctype_configure_char.cc: Likewise.
+ * config/os/mingw32/ctype_noninline.h: Likewise.
+ * config/os/mingw32/ctype_configure_char.cc: Likewise.
+ * config/os/tpf/ctype_noninline.h: Likewise.
+ * config/os/tpf/ctype_configure_char.cc: Likewise.
+ * config/os/uclibc/ctype_noninline.h: Likewise.
+ * config/os/uclibc/ctype_configure_char.cc: Likewise.
+ * config/os/bionic/ctype_noninline.h: Likewise.
+ * config/os/bionic/ctype_configure_char.cc: Likewise.
+ * config/os/djgpp/ctype_noninline.h: Likewise.
+ * config/os/djgpp/ctype_configure_char.cc: Likewise.
+ * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
+ * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
+ * config/os/bsd/netbsd/ctype_noninline.h: Likewise.
+ * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
+ * config/os/bsd/darwin/ctype_noninline.h: Likewise.
+ * config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
+ * config/os/bsd/freebsd/ctype_noninline.h: Likewise.
+ * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
+ * config/os/irix/irix6.5/ctype_noninline.h: Likewise.
+ * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
+ * config/os/generic/ctype_noninline.h: Likewise.
+ * config/os/generic/ctype_configure_char.cc: Likewise.
+ * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
+ * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.
+
2011-03-25 Jonathan Wakely <jwakely.gcc@gmail.com>
* testsuite/28_regex/match_results/ctors/char/default.cc: Do not call
diff --git a/libstdc++-v3/config/os/aix/ctype_noninline.h b/libstdc++-v3/config/os/aix/ctype_configure_char.cc
index 71024bdcb5e..d6ca6b5fbcd 100644
--- a/libstdc++-v3/config/os/aix/ctype_noninline.h
+++ b/libstdc++-v3/config/os/aix/ctype_configure_char.cc
@@ -1,6 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -22,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -89,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/bionic/ctype_noninline.h b/libstdc++-v3/config/os/bionic/ctype_configure_char.cc
index 78bc2960800..d5a8fe16314 100644
--- a/libstdc++-v3/config/os/bionic/ctype_noninline.h
+++ b/libstdc++-v3/config/os/bionic/ctype_configure_char.cc
@@ -1,6 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2010 Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -22,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -96,3 +101,5 @@
return __high;
}
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/bsd/darwin/ctype_noninline.h b/libstdc++-v3/config/os/bsd/darwin/ctype_configure_char.cc
index e8e22f62836..30cf4ad6a02 100644
--- a/libstdc++-v3/config/os/bsd/darwin/ctype_noninline.h
+++ b/libstdc++-v3/config/os/bsd/darwin/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/bsd/freebsd/ctype_noninline.h b/libstdc++-v3/config/os/bsd/freebsd/ctype_configure_char.cc
index e8e22f62836..30cf4ad6a02 100644
--- a/libstdc++-v3/config/os/bsd/freebsd/ctype_noninline.h
+++ b/libstdc++-v3/config/os/bsd/freebsd/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/bsd/netbsd/ctype_noninline.h b/libstdc++-v3/config/os/bsd/netbsd/ctype_configure_char.cc
index 724523f5a8a..77fe6275693 100644
--- a/libstdc++-v3/config/os/bsd/netbsd/ctype_noninline.h
+++ b/libstdc++-v3/config/os/bsd/netbsd/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2003, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
extern "C" const u_int8_t _C_ctype_[];
@@ -92,3 +96,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/djgpp/ctype_noninline.h b/libstdc++-v3/config/os/djgpp/ctype_configure_char.cc
index 7b14d38b63d..f755eb70c4e 100644
--- a/libstdc++-v3/config/os/djgpp/ctype_noninline.h
+++ b/libstdc++-v3/config/os/djgpp/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from DJGPP <ctype.h>
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/generic/ctype_noninline.h b/libstdc++-v3/config/os/generic/ctype_configure_char.cc
index 30045899f76..0daedf54356 100644
--- a/libstdc++-v3/config/os/generic/ctype_noninline.h
+++ b/libstdc++-v3/config/os/generic/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h b/libstdc++-v3/config/os/gnu-linux/ctype_configure_char.cc
index 45785d4a5e8..5eadeaaace6 100644
--- a/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h
+++ b/libstdc++-v3/config/os/gnu-linux/ctype_configure_char.cc
@@ -1,8 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-// 2006, 2007, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -24,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
#if _GLIBCXX_C_LOCALE_GNU
@@ -188,3 +191,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/hpux/ctype_noninline.h b/libstdc++-v3/config/os/hpux/ctype_configure_char.cc
index 9d178443e29..4ac958a2797 100644
--- a/libstdc++-v3/config/os/hpux/ctype_noninline.h
+++ b/libstdc++-v3/config/os/hpux/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/irix/irix6.5/ctype_noninline.h b/libstdc++-v3/config/os/irix/irix6.5/ctype_configure_char.cc
index 3f7af67e860..aa2481bce02 100644
--- a/libstdc++-v3/config/os/irix/irix6.5/ctype_noninline.h
+++ b/libstdc++-v3/config/os/irix/irix6.5/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -92,3 +96,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/mingw32/ctype_noninline.h b/libstdc++-v3/config/os/mingw32/ctype_configure_char.cc
index 10b1fbc490c..12184075d77 100644
--- a/libstdc++-v3/config/os/mingw32/ctype_noninline.h
+++ b/libstdc++-v3/config/os/mingw32/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2007, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,18 +22,23 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-// The classic table used in libstdc++ is *not* the C _ctype table
-// used by mscvrt, but is based on the ctype masks defined for libstdc++
-// in ctype_base.h.
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
+ // The classic table used in libstdc++ is *not* the C _ctype table
+ // used by mscvrt, but is based on the ctype masks defined for libstdc++
+ // in ctype_base.h.
const ctype_base::mask*
ctype<char>::classic_table() throw()
@@ -234,3 +238,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/newlib/ctype_noninline.h b/libstdc++-v3/config/os/newlib/ctype_configure_char.cc
index 947bce589e6..d5a8fe16314 100644
--- a/libstdc++-v3/config/os/newlib/ctype_noninline.h
+++ b/libstdc++-v3/config/os/newlib/ctype_configure_char.cc
@@ -1,6 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -22,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -95,3 +100,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/qnx/qnx6.1/ctype_noninline.h b/libstdc++-v3/config/os/qnx/qnx6.1/ctype_configure_char.cc
index b74e070594e..b6dd7f43204 100644
--- a/libstdc++-v3/config/os/qnx/qnx6.1/ctype_noninline.h
+++ b/libstdc++-v3/config/os/qnx/qnx6.1/ctype_configure_char.cc
@@ -1,6 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2002, 2009, 2010 Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -22,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -87,3 +92,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/solaris/solaris2.7/ctype_noninline.h b/libstdc++-v3/config/os/solaris/solaris2.7/ctype_configure_char.cc
index 4713c87265b..d3519429a01 100644
--- a/libstdc++-v3/config/os/solaris/solaris2.7/ctype_noninline.h
+++ b/libstdc++-v3/config/os/solaris/solaris2.7/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/tpf/ctype_noninline.h b/libstdc++-v3/config/os/tpf/ctype_configure_char.cc
index 251270344c0..643abd3f728 100644
--- a/libstdc++-v3/config/os/tpf/ctype_noninline.h
+++ b/libstdc++-v3/config/os/tpf/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -111,3 +115,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/uclibc/ctype_noninline.h b/libstdc++-v3/config/os/uclibc/ctype_configure_char.cc
index 389e76eb86f..245c7991725 100644
--- a/libstdc++-v3/config/os/uclibc/ctype_noninline.h
+++ b/libstdc++-v3/config/os/uclibc/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2006, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
-
+
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from /usr/include/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/config/os/vxworks/ctype_noninline.h b/libstdc++-v3/config/os/vxworks/ctype_configure_char.cc
index 23521b76d0f..7d2904b782d 100644
--- a/libstdc++-v3/config/os/vxworks/ctype_noninline.h
+++ b/libstdc++-v3/config/os/vxworks/ctype_configure_char.cc
@@ -1,7 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2009, 2010
-// Free Software Foundation, Inc.
+// Copyright (C) 2011 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
@@ -23,15 +22,20 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-/** @file bits/ctype_noninline.h
- * This is an internal header file, included by other library headers.
- * Do not attempt to use it directly. @headername{locale}
- */
+/** @file ctype_configure_char.cc */
//
// ISO C++ 14882: 22.1 Locales
//
+#include <locale>
+#include <cstdlib>
+#include <cstring>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Information as gleaned from target/h/ctype.h
const ctype_base::mask*
@@ -90,3 +94,6 @@
}
return __high;
}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
diff --git a/libstdc++-v3/doc/xml/manual/internals.xml b/libstdc++-v3/doc/xml/manual/internals.xml
index 72af0b835c8..c01735eb4fb 100644
--- a/libstdc++-v3/doc/xml/manual/internals.xml
+++ b/libstdc++-v3/doc/xml/manual/internals.xml
@@ -254,11 +254,8 @@ not have to include <code>&lt;ctype.h&gt;</code> in this header; it will always
included before <code>ctype_base.h</code> is included.
</para>
- <para>The next file to write is <code>ctype_noninline.h</code>, which also does
-not require include guards. This file defines a few member functions
-that will be included in <code>include/bits/locale_facets.h</code>. The first
-function that must be written is the <code>ctype&lt;char&gt;::ctype</code>
-constructor. Here is the IRIX example:
+ <para>The next file to write is <code>ctype_configure_char.cc</code>.
+The first function that must be written is the <code>ctype&lt;char&gt;::ctype</code> constructor. Here is the IRIX example:
</para>
<programlisting>
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
index 10ed04c4edb..c581aa4806a 100644
--- a/libstdc++-v3/include/Makefile.am
+++ b/libstdc++-v3/include/Makefile.am
@@ -827,7 +827,6 @@ host_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits
host_headers = \
${host_srcdir}/ctype_base.h \
${host_srcdir}/ctype_inline.h \
- ${host_srcdir}/ctype_noninline.h \
${host_srcdir}/os_defines.h \
${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \
${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
index 01e593d1c31..0da4c464538 100644
--- a/libstdc++-v3/include/Makefile.in
+++ b/libstdc++-v3/include/Makefile.in
@@ -1068,7 +1068,6 @@ host_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits
host_headers = \
${host_srcdir}/ctype_base.h \
${host_srcdir}/ctype_inline.h \
- ${host_srcdir}/ctype_noninline.h \
${host_srcdir}/os_defines.h \
${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \
${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index 9a356855138..5a6cb970822 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -104,6 +104,7 @@ host_sources = \
atomicity.cc \
codecvt_members.cc \
collate_members.cc \
+ ctype_configure_char.cc \
ctype_members.cc \
messages_members.cc \
monetary_members.cc \
@@ -116,6 +117,9 @@ codecvt_members.cc: ${glibcxx_srcdir}/$(CCODECVT_CC)
collate_members.cc: ${glibcxx_srcdir}/$(CCOLLATE_CC)
$(LN_S) ${glibcxx_srcdir}/$(CCOLLATE_CC) . || true
+ctype_configure_char.cc: ${glibcxx_srcdir}/$(OS_INC_SRCDIR)/ctype_configure_char.cc
+ $(LN_S) ${glibcxx_srcdir}/$(OS_INC_SRCDIR)/ctype_configure_char.cc . || true
+
ctype_members.cc: ${glibcxx_srcdir}/$(CCTYPE_CC)
$(LN_S) ${glibcxx_srcdir}/$(CCTYPE_CC) . || true
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index b454f66dc8b..88dca846948 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -89,8 +89,8 @@ am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
am__DEPENDENCIES_1 =
am__objects_1 = atomicity.lo codecvt_members.lo collate_members.lo \
- ctype_members.lo messages_members.lo monetary_members.lo \
- numeric_members.lo time_members.lo
+ ctype_configure_char.lo ctype_members.lo messages_members.lo \
+ monetary_members.lo numeric_members.lo time_members.lo
@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_2 = allocator-inst.lo \
@ENABLE_EXTERN_TEMPLATE_TRUE@ concept-inst.lo ext-inst.lo \
@ENABLE_EXTERN_TEMPLATE_TRUE@ fstream-inst.lo ios-inst.lo \
@@ -361,6 +361,7 @@ host_sources = \
atomicity.cc \
codecvt_members.cc \
collate_members.cc \
+ ctype_configure_char.cc \
ctype_members.cc \
messages_members.cc \
monetary_members.cc \
@@ -829,6 +830,9 @@ codecvt_members.cc: ${glibcxx_srcdir}/$(CCODECVT_CC)
collate_members.cc: ${glibcxx_srcdir}/$(CCOLLATE_CC)
$(LN_S) ${glibcxx_srcdir}/$(CCOLLATE_CC) . || true
+ctype_configure_char.cc: ${glibcxx_srcdir}/$(OS_INC_SRCDIR)/ctype_configure_char.cc
+ $(LN_S) ${glibcxx_srcdir}/$(OS_INC_SRCDIR)/ctype_configure_char.cc . || true
+
ctype_members.cc: ${glibcxx_srcdir}/$(CCTYPE_CC)
$(LN_S) ${glibcxx_srcdir}/$(CCTYPE_CC) . || true
diff --git a/libstdc++-v3/src/ctype.cc b/libstdc++-v3/src/ctype.cc
index 04d31cc5744..e246bea10dd 100644
--- a/libstdc++-v3/src/ctype.cc
+++ b/libstdc++-v3/src/ctype.cc
@@ -1,5 +1,5 @@
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005,
-// 2006, 2007, 2008, 2009
+// 2006, 2007, 2008, 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -50,11 +50,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
locale::id ctype<wchar_t>::id;
#endif
- // XXX At some point, just rename this file to ctype_configure_char.cc
- // and compile it as a separate file instead of including it here.
- // Platform-specific initialization code for ctype tables.
-#include <bits/ctype_noninline.h>
-
const size_t ctype<char>::table_size;
ctype<char>::~ctype()