--- join_iterator_original.hpp 2012-12-03 12:40:59.342140500 +0100 +++ join_iterator.hpp 2013-04-18 13:46:57.690758900 +0200 @@ -143,9 +143,13 @@ typename iterator_reference::type >::type >::value, - typename add_const< - typename iterator_reference::type - >::type, + typename add_reference< + typename add_const< + typename remove_reference< + typename iterator_reference::type + >::type + >::type + >::type, typename iterator_reference::type >::type >::type