+2010-12-02 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * src/future.cc (future_category): Export compatibility symbol.
+ * config/abi/pre/gnu.ver: Move _ZSt15future_categoryv to 3.4.15
+ version.
+
2010-12-02 François Dumont <francois.cppdevs@free.fr>
* testsuite/23_containers/vector/requirements/explicit_instantiation/
_ZNSt9__atomic011atomic_flag5clearESt12memory_order;
# future
- _ZSt15future_category;
_ZNSt12future_errorD*;
_ZNKSt12future_error4whatEv;
_ZTSSt12future_error;
_ZTISt12future_error;
_ZSt20__throw_future_errori;
+ # GLIBCXX_ABI compatibility only.
+ _ZSt15future_category;
+
# string|wstring ::cbegin member functions
_ZNKSs6cbeginEv;
_ZNKSs4cendEv;
__emutls_v._ZSt11__once_call;
__emutls_v._ZSt15__once_callable;
-} GLIBCXX_3.4.14;
-
-GLIBCXX_3.4.16 {
-
# std::future_category is now a function
_ZSt15future_categoryv;
-} GLIBCXX_3.4.15;
+} GLIBCXX_3.4.14;
# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.3 {
future_error::what() const throw() { return _M_code.message().c_str(); }
_GLIBCXX_END_NAMESPACE
+
+// XXX GLIBCXX_ABI Deprecated
+// gcc-4.6.0
+// <future> export changes
+#if defined(_GLIBCXX_SYMVER_GNU) && defined(PIC) \
+ && defined(_GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE) \
+ && defined(_GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT)
+
+namespace __gnu_cxx
+{
+ const std::error_category* future_category = &__future_category_instance();
+}
+
+#define _GLIBCXX_ASM_SYMVER(cur, old, version) \
+ asm (".symver " #cur "," #old "@@@" #version);
+
+_GLIBCXX_ASM_SYMVER(_ZN9__gnu_cxx15future_categoryE, _ZSt15future_category, GLIBCXX_3.4.14)
+
+#endif
+