+2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/hashtable.cc: Just definitions.
+ * src/hashtable_c++0x.cc: Compile C++0x versions.
+ * src/hash.cc: Same.
+ * src/hash_c++0x.cc: Same.
+ src/hash_tr1.cc: Compile TR1 versions.
+ src/hashtable_tr1.cc: Same.
+
+ * src/limits_c++0x.cc: Sync build error handling.
+
+ * src/Makefile.am (sources): Change hash.cc to hash_tr1.cc,
+ hashtable.cc to hashtable_tr1.cc.
+ * src/Makefile.in: Regenerate.
+
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/tr1_impl/functional: Doxygen markup.
ctype.cc \
debug.cc \
functexcept.cc \
- hash.cc \
+ hash_tr1.cc \
hash_c++0x.cc \
globals_io.cc \
- hashtable.cc \
+ hashtable_tr1.cc \
hashtable_c++0x.cc \
ios.cc \
ios_failure.cc \
am__DEPENDENCIES_1 =
am__libstdc___la_SOURCES_DIST = atomic.cc bitmap_allocator.cc \
pool_allocator.cc mt_allocator.cc codecvt.cc compatibility.cc \
- complex_io.cc ctype.cc debug.cc functexcept.cc hash.cc \
- hash_c++0x.cc globals_io.cc hashtable.cc hashtable_c++0x.cc \
- ios.cc ios_failure.cc ios_init.cc ios_locale.cc limits.cc \
- limits_c++0x.cc list.cc debug_list.cc locale.cc locale_init.cc \
- locale_facets.cc localename.cc math_stubs_float.cc \
- math_stubs_long_double.cc stdexcept.cc strstream.cc \
- system_error.cc tree.cc allocator-inst.cc concept-inst.cc \
- fstream-inst.cc ext-inst.cc ios-inst.cc iostream-inst.cc \
- istream-inst.cc istream.cc locale-inst.cc misc-inst.cc \
- ostream-inst.cc sstream-inst.cc streambuf-inst.cc streambuf.cc \
- string-inst.cc valarray-inst.cc wlocale-inst.cc \
+ complex_io.cc ctype.cc debug.cc functexcept.cc hash_tr1.cc \
+ hash_c++0x.cc globals_io.cc hashtable_tr1.cc \
+ hashtable_c++0x.cc ios.cc ios_failure.cc ios_init.cc \
+ ios_locale.cc limits.cc limits_c++0x.cc list.cc debug_list.cc \
+ locale.cc locale_init.cc locale_facets.cc localename.cc \
+ math_stubs_float.cc math_stubs_long_double.cc stdexcept.cc \
+ strstream.cc system_error.cc tree.cc allocator-inst.cc \
+ concept-inst.cc fstream-inst.cc ext-inst.cc ios-inst.cc \
+ iostream-inst.cc istream-inst.cc istream.cc locale-inst.cc \
+ misc-inst.cc ostream-inst.cc sstream-inst.cc streambuf-inst.cc \
+ streambuf.cc string-inst.cc valarray-inst.cc wlocale-inst.cc \
wstring-inst.cc mutex.cc condition_variable.cc chrono.cc \
thread.cc future.cc atomicity.cc codecvt_members.cc \
collate_members.cc ctype_members.cc messages_members.cc \
$(am__objects_3)
am__objects_5 = atomic.lo bitmap_allocator.lo pool_allocator.lo \
mt_allocator.lo codecvt.lo compatibility.lo complex_io.lo \
- ctype.lo debug.lo functexcept.lo hash.lo hash_c++0x.lo \
- globals_io.lo hashtable.lo hashtable_c++0x.lo ios.lo \
+ ctype.lo debug.lo functexcept.lo hash_tr1.lo hash_c++0x.lo \
+ globals_io.lo hashtable_tr1.lo hashtable_c++0x.lo ios.lo \
ios_failure.lo ios_init.lo ios_locale.lo limits.lo \
limits_c++0x.lo list.lo debug_list.lo locale.lo locale_init.lo \
locale_facets.lo localename.lo math_stubs_float.lo \
ctype.cc \
debug.cc \
functexcept.cc \
- hash.cc \
+ hash_tr1.cc \
hash_c++0x.cc \
globals_io.cc \
- hashtable.cc \
+ hashtable_tr1.cc \
hashtable_c++0x.cc \
ios.cc \
ios_failure.cc \
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-#include <cstddef>
-#include <string>
-#include <cmath>
-
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
-#include <functional>
-# define _GLIBCXX_BEGIN_NAMESPACE_TR1
-# define _GLIBCXX_END_NAMESPACE_TR1
-#else
-#include <tr1/functional>
-# define _GLIBCXX_BEGIN_NAMESPACE_TR1 namespace tr1 {
-# define _GLIBCXX_END_NAMESPACE_TR1 }
-#endif
-
-namespace std
-{
-_GLIBCXX_BEGIN_NAMESPACE_TR1
-
// For long double, careful with random padding bits (e.g., on x86,
// 10 bytes -> 12 bytes) and resort to frexp.
template<>
}
#endif
#endif
-
-_GLIBCXX_END_NAMESPACE_TR1
-}
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-#include "hash.cc"
+#include <cstddef>
+#include <string>
+#include <cmath>
+#include <functional>
#include <system_error>
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
+# error "hash_c++0x.cc must be compiled with -std=gnu++0x"
+#endif
+
namespace std
{
+#include "hash.cc"
+
template<>
size_t
hash<error_code>::operator()(error_code __e) const
--- /dev/null
+// std::hash definitions -*- C++ -*-
+
+// Copyright (C) 2007, 2009 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 3, 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.
+
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
+
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
+
+#include <cstddef>
+#include <string>
+#include <cmath>
+#include <tr1/functional>
+
+namespace std
+{
+ namespace tr1
+ {
+#include "hash.cc"
+ }
+}
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
-# define _GLIBCXX_BEGIN_NAMESPACE_TR1
-# define _GLIBCXX_END_NAMESPACE_TR1
-#else
-# define _GLIBCXX_BEGIN_NAMESPACE_TR1 namespace tr1 {
-# define _GLIBCXX_END_NAMESPACE_TR1 }
-#endif
-
-namespace std
-{
-_GLIBCXX_BEGIN_NAMESPACE_TR1
-
namespace __detail
{
extern const unsigned long __prime_list[] = // 256 + 1 or 256 + 48 + 1
#endif
};
} // namespace __detail
-
-_GLIBCXX_END_NAMESPACE_TR1
-}
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
+# error "hashtable_c++0x.cc must be compiled with -std=gnu++0x"
+#endif
+
+namespace std
+{
#include "hashtable.cc"
+}
--- /dev/null
+// std::__detail definitions -*- C++ -*-
+
+// Copyright (C) 2007, 2009 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 3, 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.
+
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
+
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
+
+namespace std
+{
+ namespace tr1
+ {
+#include "hashtable.cc"
+ }
+}
#include <limits>
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
+# error "limits_c++0x.cc must be compiled with -std=gnu++0x"
+#endif
+
namespace std
{
// char16_t