https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55922
Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |msebor at gcc dot gnu.org --- Comment #4 from Martin Sebor <msebor at gcc dot gnu.org> --- I'm not sure how helpful or relevant this is at this point but according to my testing the wrong code seems to have been emitted since r142404 committed in the gcc 4.4.0 release cycle: r142404 | jason | 2008-12-03 14:22:08 -0500 (Wed, 03 Dec 2008) | 6 lines PR c++/38380 * decl.c (grokdeclarator): Only set DECL_NONCONVERTING_P on explicit constructors. * pt.c (tsubst_copy_and_build) [CONSTRUCTOR]: Propagate CONSTRUCTOR_IS_DIRECT_INIT. Prior to that, GCC rejected the program with the following error: error: converting to ‘const B1’ from initializer list would use explicit constructor ‘B1::B1()’