Guys,

Small sample below fails (at least on 6.1) for multiple targets. The
difference between two functions start at the very first tree pass...

Please confirm that I'm not crazy and it's not supposed to be like this...

Thanks

--
#include "limits.h"
#include "stdio.h"

int* __attribute__((noinline)) f1(int* p, int x)
{
return &p[x + 1];
}

int* __attribute__((noinline)) f2(int*p, int x)
{
return &p[1 + x];
}

int P[10];

int main()
{
int x = INT_MAX;
if (f1(P, x) != f2(P, x)) {
printf("Error!\n");
abort();
}
}
--

Reply via email to