https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120938

--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Removing the parameter of inc makes the problem to go away. So does removing
the recursion

#include <stdio.h>
volatile int variablev;
static int dead ()
{
        return 0;
}
static void inc()
{
        variablev++;
}

static void
inline_me (int l)
{
        for (int i = 0; i < 100000000; i++)
        {dead();inc();inc();}
        if (!l) 
                inline_me (l+1);
        printf ("block tail recursion\n");
}

int main ()
{
        inline_me (0);
        return 0;
}

Reply via email to