Hi, I am expecting a error (redefinition of "a") from following piece of code. But gcc (3.4.2) doesnot give any error. ///////////////// int a; char b; int a; void foo(void) { return; } ///////////////// Instead, if we try initialising "a" at BOTH the places, then it gives error. VC++ gives this error anyway. Is it a bug??? Regards. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com