i expect the above code to give compiler error bcos ...there is no point in specifying "static to a void return value"....please explanationCode:[/home/kiran/new]@cat > check.c main() { static void f(void); f(); } static void f(void) { printf("sdfgdasj"); } [/home/kiran/new]@gcc check.c [/home/kiran/new]@./a.out