http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9050
--- Comment #16 from Johannes Schaub <schaub.johannes at googlemail dot com> 2012-04-02 07:43:23 UTC --- (In reply to comment #15) > (In reply to comment #14) > > Good point, I've pointed out the problem with the proposed resolution. Note that we currently have http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#581 open. Even when 12.1 would have allowed both the injected class name and it followed by template-arguments, the name lookup rules would never allow it to match the second condition because the injected class name would always have been translated to a name denoting the constructor instead of the class. So ultimately, 12.1 allowing the injected class name followed by template arguments could only be used in an unqualified-id constructor declaration in C++03.