http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47628
--- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-02-07 18:00:50 UTC --- Great. For the record, Bryce, the change to the standard was done by DR 180 http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#180 see also http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2350.pdf The code is invalid in C++0x, so I recommend adding the 'explicit' keyword to the template constructor, if the Boost testsuite passes with that change. That will allow the same code to work with C++03 and C++0x compilers.