package libsigc++-2.0
tags 466945 + patch
thanks

Attached is a patch to fix this bug, as well as a missing include or two.
-- 
Daniel Schepler
diff -urN libsigc++-2.0-2.0.17.old/sigc++/signal.h libsigc++-2.0-2.0.17/sigc++/signal.h
--- libsigc++-2.0-2.0.17.old/sigc++/signal.h	2005-12-20 08:35:21.000000000 +0000
+++ libsigc++-2.0-2.0.17/sigc++/signal.h	2008-02-22 00:22:44.000000000 +0000
@@ -1661,7 +1661,7 @@
   typedef internal::signal_emit0<T_return, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -1770,7 +1770,7 @@
   typedef internal::signal_emit1<T_return, T_arg1, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -1881,7 +1881,7 @@
   typedef internal::signal_emit2<T_return, T_arg1,T_arg2, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -1994,7 +1994,7 @@
   typedef internal::signal_emit3<T_return, T_arg1,T_arg2,T_arg3, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2,T_arg3>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -2109,7 +2109,7 @@
   typedef internal::signal_emit4<T_return, T_arg1,T_arg2,T_arg3,T_arg4, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -2226,7 +2226,7 @@
   typedef internal::signal_emit5<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -2345,7 +2345,7 @@
   typedef internal::signal_emit6<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
@@ -2466,7 +2466,7 @@
   typedef internal::signal_emit7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7, T_accumulator> emitter_type;
   typedef typename emitter_type::result_type         result_type;
   typedef slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>    slot_type;
-  typedef slot_list<slot_type>                       slot_list_type;
+  typedef sigc::slot_list<slot_type>                       slot_list_type;
   typedef typename slot_list_type::iterator               iterator;
   typedef typename slot_list_type::const_iterator         const_iterator;
   typedef typename slot_list_type::reverse_iterator       reverse_iterator;
diff -urN libsigc++-2.0-2.0.17.old/tests/test_copy_invalid_slot.cc libsigc++-2.0-2.0.17/tests/test_copy_invalid_slot.cc
--- libsigc++-2.0-2.0.17.old/tests/test_copy_invalid_slot.cc	2005-05-01 02:00:47.000000000 +0000
+++ libsigc++-2.0-2.0.17/tests/test_copy_invalid_slot.cc	2008-02-22 00:24:08.000000000 +0000
@@ -1,4 +1,6 @@
 #include <iostream>
+#include <cstdlib>
+#include <cstring>
 #include <sigc++/sigc++.h>
 
 void Foo(sigc::trackable &t) {}

Reply via email to