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

--- Comment #2 from Konstantin Shegunov <kshegunov at gmail dot com> ---
Yes, this is the error I get.

What should happen instead is that compilation succeeds. Having the following
as declaration in using.h:

class DerivedPrivate;
class Derived final : public Base
{
public:
    Derived(); // using Base::Base;
    ~Derived() override;

private:
    std::unique_ptr<DerivedPrivate> d;
};


And trivially defining it in using.cpp:

Derived::Derived()
{
}


compiles correctly, i.e.
g++ -c -pipe -g -std=gnu++11 -Wall -W -fPIC -I. -o main.o main.cpp

produces no error.

Reply via email to