diff -r --unified a/boost/signals/detail/named_slot_map.hpp b/boost/signals/detail/named_slot_map.hpp
--- a/boost/signals/detail/named_slot_map.hpp	2010-11-29 14:27:10.000000000 -0700
+++ b/boost/signals/detail/named_slot_map.hpp	2011-11-01 12:56:39.581783057 -0600
@@ -35,7 +35,7 @@
   stored_group(storage_kind p_kind = sk_empty) : kind(p_kind), group() { }
 
   template<typename T>
-  stored_group(const T& p_group) : kind(sk_group), group(new T(p_group)) { }
+  explicit stored_group(const T& p_group) : kind(sk_group), group(new T(p_group)) { }
 
   bool is_front() const { return kind == sk_front; }
   bool is_back() const { return kind == sk_back; }
