int g;
int
main(void)
{
g = 0;
}
int a; int a;is illegal
int a;
void f(void)
{
float a; /* different from global `a' */
float b;
a = 0.0; /* sets `a' declared in this block to 0.0 */
/* global `a' is untouched */
{
int a; /* new `a' variable */
a = 2; /* outer `a' is still set to 0.0 */
}
b = a; /* sets `b' to 0.0 */
}
/* global `a' is untouched by anything done in f() */