$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Felipe Magno de Almeida (felipe.m.almeida_at_[hidden])
Date: 2008-03-28 16:21:41
Index: core/non_terminal/impl/static.hpp
===================================================================
--- core/non_terminal/impl/static.hpp	(revisÆo 43915)
+++ core/non_terminal/impl/static.hpp	(c¢pia de trabalho)
@@ -44,25 +44,26 @@
         typedef typename boost::call_traits<T>::reference reference;
         typedef typename boost::call_traits<T>::const_reference
const_reference;
-        static_(Tag = Tag())
+        struct destructor
         {
-            struct destructor
+            ~destructor()
             {
-                ~destructor()
-                {
-                    static_::get_address()->~value_type();
-                }
-            };
+                static_::get_address()->~value_type();
+            }
+        };
-            struct default_ctor
+        struct default_ctor
+        {
+            static void construct()
             {
-                static void construct()
-                {
-                    ::new (static_::get_address()) value_type();
-                    static destructor d;
-                }
-            };
+                ::new (static_::get_address()) value_type();
+                static destructor d;
+            }
+        };
+        static_(Tag = Tag())
+        {
+
             boost::call_once(&default_ctor::construct, constructed_);
         }
On Fri, Mar 28, 2008 at 5:20 PM, Felipe Magno de Almeida
<felipe.m.almeida_at_[hidden]> wrote:
> Hi,
>
>  There are linking errors on msvc 7.1 (and probably other compilers)
>  with static.hpp.
>  The structs destructor e default_ctor are defined inside static_ constructors.
>  If I move them to outside the function, they link ok.
>
>  Regards,
>  --
>  Felipe Magno de Almeida
>
-- Felipe Magno de Almeida