Dear All, I am stuck with a source code for a project that was last compiled about three years ago. Somehow this code would not compile now, and I think that some bug in g++ might be the cause of the problem. I would really appreciate if you could help. root@nezlobin:/mnt/hdb1/Source/src# make make st make[1]: Entering directory `/mnt/hdb1/Source/src' cd /mnt/hdb1/Source/src/Parser && \ bison -d -v parser.y -o parser.tab.c parser.y contains 26 shift/reduce conflicts and 27 reduce/reduce conflicts. cd /mnt/hdb1/Source/src/Parser && \ g++ -g -Wall -MMD parser.tab.c -c -o parser.tab.o In file included from /usr/include/c++/3.2.3/backward/iostream.h:31, from /mnt/hdb1/Source/src/CType/agstring.h:26, from /mnt/hdb1/Source/src/CType/CType.h:4, from parser.y:7: /usr/include/c++/3.2.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated. In file included from /usr/include/c++/3.2.3/bits/localefwd.h:48, from /usr/include/c++/3.2.3/ios:48, from /usr/include/c++/3.2.3/ostream:45, from /usr/include/c++/3.2.3/iostream:45, from /usr/include/c++/3.2.3/backward/iostream.h:32, from /mnt/hdb1/Source/src/CType/agstring.h:26, from /mnt/hdb1/Source/src/CType/CType.h:4, from parser.y:7: /usr/include/c++/3.2.3/cctype:68: `isalnum' not declared /usr/include/c++/3.2.3/cctype:69: `isalpha' not declared /usr/include/c++/3.2.3/cctype:70: `iscntrl' not declared /usr/include/c++/3.2.3/cctype:71: `isdigit' not declared /usr/include/c++/3.2.3/cctype:72: `isgraph' not declared /usr/include/c++/3.2.3/cctype:73: `islower' not declared /usr/include/c++/3.2.3/cctype:74: `isprint' not declared /usr/include/c++/3.2.3/cctype:75: `ispunct' not declared /usr/include/c++/3.2.3/cctype:76: `isspace' not declared /usr/include/c++/3.2.3/cctype:77: `isupper' not declared /usr/include/c++/3.2.3/cctype:78: `isxdigit' not declared /usr/include/c++/3.2.3/cctype:79: `tolower' not declared /usr/include/c++/3.2.3/cctype:80: `toupper' not declared In file included from /usr/include/c++/3.2.3/bits/locale_facets.h:63, from /usr/include/c++/3.2.3/bits/basic_ios.h:41, from /usr/include/c++/3.2.3/ios:51, from /usr/include/c++/3.2.3/ostream:45, from /usr/include/c++/3.2.3/iostream:45, from /usr/include/c++/3.2.3/backward/iostream.h:32, from /mnt/hdb1/Source/src/CType/agstring.h:26, from /mnt/hdb1/Source/src/CType/CType.h:4, from parser.y:7: /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:44: `_ISupper' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:45: `_ISlower' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:46: `_ISalpha' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:47: `_ISdigit' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:48: `_ISxdigit' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:49: `_ISspace' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:50: `_ISprint' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:51: `_ISgraph' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:52: `_IScntrl' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:53: `_ISpunct' was not declared in this scope /usr/include/c++/3.2.3/i486-slackware-linux/bits/ctype_base.h:54: `_ISalnum' was not declared in this scope In file included from parser.y:9: /mnt/hdb1/Source/src/VSource/Sinusoid.h:20: default argument given for parameter 3 of `Sinusoid::Sinusoid(double, double, double = 0x0000000000000000000000000000000000000000)' /mnt/hdb1/Source/src/VSource/Sinusoid.h:8: after previous specification in ` Sinusoid::Sinusoid(double, double, double = 0x0000000000000000000000000000000000000000)' make[1]: *** [/mnt/hdb1/Source/src/Parser/parser.tab.o] Error 1 rm /mnt/hdb1/Source/src/Parser/parser.tab.h make[1]: Leaving directory `/mnt/hdb1/Source/src' make: *** [all] Error 2 Thanks, Nikolai Nezlobin