------- Comment #10 from jakub at gcc dot gnu dot org 2009-01-28 21:47 ------- Further testcases:
inline __attribute__((always_inline)) void A (void) { A (); A (); A (); } int main () { A (); return 0; } and: inline void A (void); inline void B (void); inline __attribute__ ((always_inline)) void C (void) { B (); } inline __attribute__ ((always_inline)) void B (void) { A (); } inline __attribute__ ((always_inline)) void A (void) { A (); B (); C (); } int main () { A (); return 0; } Perhaps just changing node->aux for all nodes for which recursive cgraph_decide_inlining_incrementally will be called would work. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38844