OSDN Git Service

2003-06-30 Jerry Quinn <jlquinn@optonline.net>
authorjlquinn <jlquinn@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jul 2003 05:38:04 +0000 (05:38 +0000)
committerjlquinn <jlquinn@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jul 2003 05:38:04 +0000 (05:38 +0000)
* src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
* include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68761 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/locale_facets.tcc
libstdc++-v3/src/locale.cc

index 79fc528..930c0d8 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-30  Jerry Quinn  <jlquinn@optonline.net>
+
+       * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
+       * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
+
 2003-06-30  Benjamin Kosnik  <bkoz@redhat.com>
 
        * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
index 6a38816..aca0e05 100644 (file)
@@ -93,35 +93,13 @@ namespace std
     __use_cache(const locale& __loc);
 
   template<>
-    inline const __numpunct_cache<char>&
-    __use_cache(const locale& __loc)
-    {
-      size_t __i = numpunct<char>::id._M_id();
-      const locale::facet** __caches = __loc._M_impl->_M_caches;
-      if (!__caches[__i])
-       {
-         __numpunct_cache<char>* __tmp = new __numpunct_cache<char>;
-         __tmp->_M_cache(__loc);
-         __loc._M_impl->_M_install_cache(__tmp, __i);
-       }
-      return static_cast<const __numpunct_cache<char>&>(*__caches[__i]);
-    }
+    const __numpunct_cache<char>&
+    __use_cache(const locale& __loc);
 
 #ifdef _GLIBCPP_USE_WCHAR_T
   template<>
-    inline const __numpunct_cache<wchar_t>&
-    __use_cache(const locale& __loc)
-    {
-      size_t __i = numpunct<wchar_t>::id._M_id();
-      const locale::facet** __caches = __loc._M_impl->_M_caches;
-      if (!__caches[__i])
-       {
-         __numpunct_cache<wchar_t>* __tmp = new __numpunct_cache<wchar_t>;
-         __tmp->_M_cache(__loc);
-         __loc._M_impl->_M_install_cache(__tmp, __i);
-       }
-      return static_cast<const __numpunct_cache<wchar_t>&>(*__caches[__i]);
-    }
+    const __numpunct_cache<wchar_t>&
+    __use_cache(const locale& __loc);
 #endif
 
   // Stage 1: Determine a conversion specifier.
index 8cb89e5..7788a58 100644 (file)
@@ -449,6 +449,38 @@ namespace std
   locale::facet::
   ~facet() { }
 
+  template<>
+    const __numpunct_cache<char>&
+    __use_cache(const locale& __loc)
+    {
+      size_t __i = numpunct<char>::id._M_id();
+      const locale::facet** __caches = __loc._M_impl->_M_caches;
+      if (!__caches[__i])
+       {
+         __numpunct_cache<char>* __tmp = new __numpunct_cache<char>;
+         __tmp->_M_cache(__loc);
+         __loc._M_impl->_M_install_cache(__tmp, __i);
+       }
+      return static_cast<const __numpunct_cache<char>&>(*__caches[__i]);
+    }
+
+#ifdef _GLIBCPP_USE_WCHAR_T
+  template<>
+    const __numpunct_cache<wchar_t>&
+    __use_cache(const locale& __loc)
+    {
+      size_t __i = numpunct<wchar_t>::id._M_id();
+      const locale::facet** __caches = __loc._M_impl->_M_caches;
+      if (!__caches[__i])
+       {
+         __numpunct_cache<wchar_t>* __tmp = new __numpunct_cache<wchar_t>;
+         __tmp->_M_cache(__loc);
+         __loc._M_impl->_M_install_cache(__tmp, __i);
+       }
+      return static_cast<const __numpunct_cache<wchar_t>&>(*__caches[__i]);
+    }
+#endif
+
   // Definitions for static const data members of time_base
   template<> 
     const char*