https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64565
Bug ID: 64565 Summary: [5 Regression] ICE: in inline_small_functions, at ipa-inline.c:1664 Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ipa Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org CC: hubicka at gcc dot gnu.org Since r219452 I get: trippels@gcc2-power8 places % cat nsNavHistoryResult.ii typedef enum { NS_OK } nsresult; struct A { static int kIID; }; class B { }; class C { public: C (B p1) { m_fn1 (p1, A::kIID); } void m_fn1 (B, int); }; class D; class F { public: F (int); }; class G { public: D *operator[](int); }; class H { virtual nsresult m_fn2 (); public: void m_fn3 (); }; class J : H { G mQueries; int mLiveUpdate; nsresult m_fn2 (); }; class D { public: nsresult m_fn4 (int); void m_fn5 (int); }; class I { public: static I * m_fn6 () { B __trans_tmp_3; if (!gHistoryService) C serv = __trans_tmp_3; } void m_fn7 (); static I *gHistoryService; }; D *Refresh___trans_tmp_2; D Refresh___trans_tmp_6, Refresh___trans_tmp_5; int Refresh_hasDomain; nsresult J::m_fn2 () { m_fn3 (); I history = *I::m_fn6 (); switch (mLiveUpdate) { case 1: { mQueries[0]; F query = 0; if (Refresh_hasDomain) return NS_OK; } case 0: { Refresh___trans_tmp_2 = mQueries[0]; F query = Refresh___trans_tmp_5.m_fn4 (0); history.m_fn7 (); Refresh___trans_tmp_6.m_fn5 (0); } case 3: m_fn2 (); } } trippels@gcc2-power8 places % c++ -c -O2 nsNavHistoryResult.ii nsNavHistoryResult.ii:88:1: internal compiler error: in inline_small_functions, at ipa-inline.c:1664 } ^ 0x1103ce83 inline_small_functions ../../gcc/gcc/ipa-inline.c:1664 0x1103ce83 ipa_inline ../../gcc/gcc/ipa-inline.c:2163 0x1103ce83 execute ../../gcc/gcc/ipa-inline.c:2536 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions.