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