From 4f69811862d880a8d2340500dbf7a7aead2d71f3 Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sun, 14 Jan 2007 19:23:31 +0100 Subject: always_inline3.c: Update for pre-inline tail recursion elimination. * gcc.dg/always_inline3.c: Update for pre-inline tail recursion elimination. From-SVN: r120777 --- gcc/testsuite/ChangeLog | 5 +++++ 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 + + * gcc.dg/always_inline3.c: Update for pre-inline tail recursion + elimination. + 2007-01-14 Paul Thomas 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. */ } -- cgit v1.1