> > > In the line above I replaced g++ by g++ -E and I have removed what comes > > > after the -c (of course). > > > > > > I send you the result attached. It seems that the compiler is right > > > bad_cast is nowhere to be found... > > > > bad_cast come from > > /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/typeinfo do you have > > this file in your gcc 4.3.0 ? > > And here it comes > from > /usr/lib/gcc/i386-redhat-linux/4.3.0/../../../../include/c++/4.3.0/typeinfo > > so it should be from /usr/include/c++/4.3.0/typeinfo. > > I added > #include <typeinfo> > > and now it works, but I am not sure if this is necessary....
well we use bad_cast class directly, so if no other include imports it, then why not to include. looking at c++ reference <typeinfo.h> is normally used for casts. what seems really strange is that you dont have to use it until the change to alpha1 happens. maybe to work out some minimal example .cpp file like class to_local8bit_failure : public bad_cast {}; and various g++ params can bring some insight whats happening. pavel