The following program miscompiles on the tree-ssa branch at -O1 and -O2.
int main()
{
int a;
void test(int i)
{
a = i;
};
a = 0;
test (42);
if (a != 42)
abort ();
return 0;
}
It looks like the ssa pass doesn't know about contained functions, and
misses the redefinition of a inside the contained function.
Paul Brook