[Bug c++/56323] [C++11] cannot compile inherited constructor for typedef'ed base class

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Feb 14 14:42:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56323

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |rejects-valid
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2013-02-14
                 CC|                            |jason at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> 2013-02-14 14:42:20 UTC ---
I think [class.qual]/2 says both C and D are valid.

C is valid because it is a using-declaration that is a member-declaration and
the name specified after the nested-name-specifier is the same as the
identifier in the last component of the nested-name-specifier.

D is valid because the name specified after the nested-name-specifier is the
injected-class-name of A.

In both cases the using-declaration names the constructor, so it declares a set
of inheriting constructors.



More information about the Gcc-bugs mailing list