https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78124

            Bug ID: 78124
           Summary: [7 regression][c++1z] explicit inheriting constructor
                    is ignored
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: lucdanton at free dot fr
  Target Milestone: ---

I have bisected this regression to r241188.

The program fails to compile in C++1z mode on trunk, yielding this:

$ g++-trunk -std=c++1z main.cpp
main.cpp: In function 'int main()':
main.cpp:11:19: error: could not convert '0' from 'int' to 'base'
     derived d { 0 };

The testcase:

//----------
struct base {
    explicit constexpr base(int&&) {}
};

struct derived: base {
    using base::base;
};

int main()
{
    derived d { 0 };
}
//----------

Reply via email to