On 08/09/2011 1:32 AM, Frédéric Bron wrote:
I have recompiled the code I am working on with i686-pc-cygwin-g++ 4.5.3.
I get many of the following messages from the linker:
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
gcc-release/obj/BTest/Test.o: warning: duplicate section
`.rdata$_ZTISs[typeinfo for std::basic_string<char,
std::char_traits<char>, std::allocator<char> >]' has different size
I do not get this error cross-compiling the same code with
i686-pc-mingw32-g++ 4.5.2.
Any chance that this comes from the new version?
In my experience, these sorts of errors arise when there really is
something wrong with the code, usually involving sizes of integers (e.g.
'long' in struct's definition and 'int' in another, on a 64-bit
machine). However, the linker is poorly-equipped to detect such errors
unless the resulting objects have different sizes.
So, while I wouldn't rule out miscompilation, I would first check for
silently conflicting definitions in different compilation units.
At least one list discussion for another project reported a similar
gcc-whines-mingw-silent issue, and the resulting mingw binary didn't run
properly (which supports the silent conflict hypothesis).
BTW, a STC would have been extremely helpful here -- all we can do is
speculate without it
Ryan
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple