https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66443
Bug ID: 66443 Summary: Virtual inheritance vs. non-default constructors Product: gcc Version: 5.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: vpozdyayev at gmail dot com Target Milestone: --- This code has become valid in C++14, see http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1611 (and #1658). Current result: main.cpp: In constructor 'C::C()': main.cpp:13:15: error: use of deleted function 'B::B()' ... class A { public: A( int ) { } }; class B: virtual public A { public: virtual void do_something() = 0; }; class C: public B { public: C(): A( 1 ) { } virtual void do_something() { } }; int main() { C c; return 0; }