https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65030
Bug ID: 65030 Summary: [5 Regression] ICE (segfault) on arm-linux-gnueabihf Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: doko at gcc dot gnu.org build failure in libffado, seen with 20150205 and 20150211 on arm-linux-gnueabihf, configured --with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=hard --with-mode=thumb g++ -c -g -O2 -fPIC controlserver.ii controlserver.ii:12:7: warning: direct base 'Interface' inaccessible in 'D' due to ambiguity class D : Interface, C {}; ^ controlserver.ii: In destructor 'virtual G::~G()': controlserver.ii:12:7: internal compiler error: RTL flag check: CONSTANT_POOL_ADDRESS_P used with unexpected rtx code 'mem' in place_block_symbol, at varasm.c:7157 class D : Interface, C {}; ^ Please submit a full bug report, with preprocessed source if appropriate. $ cat controlserver.ii class Interface { public: virtual ~Interface(); }; class C : virtual Interface {}; class A { virtual int m_fn1(const int &); }; class B { virtual bool m_fn2(const bool &); }; class D : Interface, C {}; class F : A, D { int m_fn1(const int &); }; class G : B, D { bool m_fn2(const bool &); }; int F::m_fn1(const int &) {} bool G::m_fn2(const bool &) {}