[cfe-dev] Libc++ Windows Semi-analyzed test results

Ruben Van Boxem vanboxem.ruben at gmail.com
Sat Oct 1 03:51:03 PDT 2011

2011/9/28 Ruben Van Boxem <vanboxem.ruben at gmail.com>

> Hi,
> Attached is a file describing in detail what libc++ tests failed in my test
> run and why (if it could be easily deduced from comparing Clang/GCC output
> or from the helpful Clang error messages). I used a slightly modified
> testit, so that GCC (which doesn't use default a.out on Windows) could also
> run the tests. That patch could use some work, I'll keep it local for now.
> The good news: a lot of these have trivial fixes, and the fault lies in the
> tests themselves (size of wchar_t, locale names, different number output
> format...).
> The bad news: Making this document sucked, and I'm never doing it again.
> If in any way possible, thid could have a place in the libc++ source tree.
> It would make finding outstanding test failures and their reasons easy.
> Perhaps other platforms could then also keep track of failures. If not, I'll
> create a general bug report for libc++ and attach this document. I of course
> plan to keep this updated once fixes are applied.
> A small summarizing note:
>  - thread needs attention, probably most failures are due to winpthreads.
>  - io (actually most kinds of streams) needs attention, failures pops up
> everywhere.
>  - lots of regex failures. Not good.
>  - numerics has trouble with math functions. Perhaps a format issue.
>  - stdint.h and uchar.h issues are being dealt with.
> Re the last point: How does Clang handle __cplusplus and C++11?
> I'll be using this as a basis to further fix Windows issues, but I'll have
> less time from now on. It is a nice baseline status of libc++ on Windows.
> Help is always appreciated ;-)
The small work I've done on locale related stuff reduced failed test count
from 621 to 438. Wow. Progress: almost under 10% :) I have attached an
updated "results.Windows" to celebrate, and also the patch I used to run
testit. The TEST_EXE is necessary for GCC compatibility, it does not use the
default a.out, but a.exe instead. I still needed to use a static libc++ for
this run... -Wl,--export-all-symbols seems insufficient for the dll to work
(although nm does show the missing symbols, maybe a clang vs ld problem).

> Ruben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20111001/462342c0/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: results.Windows
Type: application/octet-stream
Size: 25399 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20111001/462342c0/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testit.patch
Type: application/octet-stream
Size: 1240 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20111001/462342c0/attachment-0001.obj>

More information about the cfe-dev mailing list