I finally trace down a typo bug, which is something similar to the following code. But shouldn't the compiler detect this (by default options)?
#include <stdio.h>
int main()
{
int c = c;
return printf("%d\n", c);
}
$ gcc --version
gcc (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3