diff options
| -rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/testsuite/gcc.dg/always_inline3.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8402f29..ed3350d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-01-14 Jan Hubicka <jh@suse.cz> + + * gcc.dg/always_inline3.c: Update for pre-inline tail recursion + elimination. + 2007-01-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/30410 diff --git a/gcc/testsuite/gcc.dg/always_inline3.c b/gcc/testsuite/gcc.dg/always_inline3.c index e1a337c..7b575d7 100644 --- a/gcc/testsuite/gcc.dg/always_inline3.c +++ b/gcc/testsuite/gcc.dg/always_inline3.c @@ -1,10 +1,11 @@ /* { dg-do compile } */ /* { dg-options "-Winline -O2" } */ -void do_something_evil (void); +int do_something_evil (void); inline __attribute__ ((always_inline)) void q2(void) { /* { dg-error "recursive" "" } */ - do_something_evil (); - q2(); /* { dg-error "called from here" "" } */ + if (do_something_evil ()) + return; q2(); /* { dg-error "called from here" "" } */ + q2(); /* With -O2 we don't warn here, it is eliminated by tail recursion. */ } |
