Libstdc++ as DLL on windows, alternative approach [was Re: cygwin patch review]
Dave Korn
dave.korn.cygwin@googlemail.com
Mon Nov 16 02:57:00 GMT 2009
Dave Korn wrote:
> Initial test results (c and c++ only) are posted(*) and look right, but I'll
> do a clean run on the same source revision for comparison anyway. Note that I
> had to patch various testsuite/lib/ files to avoid the current utf-8
> problem(**) that would otherwise have provoked many spurious 'excess errors'
> warnings. That'll be the subject of a separate patch, I'll do the clean run
> using them as well so the comparison is fair.
In fact I found that my first version of that fix wasn't quite right, which
accounts for all but one of the discrepancies between these two sets of results:
Libstdc dll results
http://gcc.gnu.org/ml/gcc-testresults/2009-11/msg01084.html
Clean run results:
http://gcc.gnu.org/ml/gcc-testresults/2009-11/msg01432.html
For the clean run, I used LC_ALL=C.ASCII. My first try (when I did the
libstdc++ dll tests) had C.CP437 which led to spurious 'test for/excess
errors' failures in the gcc.dg/cpp/_Pragma3.c, gcc.dg/attr-alias-5.c and
gcc.dg/ucnid-*.c tests. Updating the test scripts to correctly use C.ASCII
and re-running the failing tests in the original libstdc++ dll build tree
shows them all passing as expected.
The one remaining difference between the two sets of results is in the
g++.dg/tree-prof/partition1.C results; this is also an artifact, as I was
inadvertently using an older binutils when I tested the libstdc++ dll build,
and the linker script choked on the .text.unlikely section. We fixed this
recently in binutils CVS, and using a more recent build of the linker fixed
the apparent failure.
So: there are no regressions caused by the libstdc++ dll patch.
cheers,
DaveK
More information about the Gcc-patches
mailing list