The reason it's not backwards compatible in this case is that gcc is becoming more standards compliant. Look at the gcc info page for command line arguments... there is one to allow the use of "and" and "or" as variable names rather than keywords. Brian On Thu, 3 Mar 2005 16:11:21 +0530, Gaurav Kansal <gkansal@xxxxxxxxxxxxx> wrote: > Hi > > I am executing the following piece of code. I have put this in a test.cpp > file. > #include <stdio.h> > int main() > { > int and; > } > > If I compile this code with g++ (version 2.95.3), it compiles. But if this > code is compiled with g++ version 3.1.1, 3.2.2 or 3.3.1, it gives the > following error: > "parse error before `&&' token" > > I don't understand why the g++ versions are not backward compatible. Is > there some get around for this problem. I have to use g++ version 3.3.1 > only. > > Regards, > Gaurav Kansal > > "Every Customer is a Reference Customer" > > >