Bug creation and email sending has been disabled, file new bugs at gcc.gnu.org/bugzilla
Bug 32 - Failing phobos unit tests:
Summary: Failing phobos unit tests:
Status: RESOLVED FIXED
Alias: None
Product: GDC
Classification: Unclassified
Component: libgphobos (show other bugs)
Version: development
Hardware: x86_64 Linux
: --- normal
Assignee: Iain Buclaw
URL:
Depends on:
Blocks:
 
Reported: 2012-12-30 00:28 CET by Johannes Pfau
Modified: 2013-08-29 11:03 CEST (History)
0 users

See Also:


Attachments
complete test log (154.41 KB, text/x-log)
2012-12-30 00:28 CET, Johannes Pfau
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Pfau 2012-12-30 00:28:46 CET
Created attachment 22 [details]
complete test log

A list of currently failing phobos unittests for reference:

std.complex:634                                                           FAILED
std.complex:654                                                           FAILED
std.internal.math.errorfunction:202                                       FAILED
std.internal.math.gammafunction:232                                       FAILED
std.internal.math.gammafunction:766                                       FAILED
std.variant:1077                                                        DISABLED
std.typecons:2536                                                         FAILED
std.typecons:3055                                                         FAILED
std.typecons:3066                                                         FAILED
std.typecons:3077                                                         FAILED
std.typecons:3122                                                         FAILED
std.outbuffer:355                                                       DISABLED
std.math:274                                                              FAILED
std.math:388                                                              FAILED
std.math:1301                                                             FAILED
std.math:1308                                                             FAILED
std.math:1398                                                             FAILED
std.math:2431                                                             FAILED
std.datetime:1090                                                       DISABLED
std.datetime:7633                                                         FAILED
std.datetime:18031                                                        FAILED
std.datetime:19706                                                        FAILED
std.datetime:20310                                                        FAILED
std.datetime:20544                                                        FAILED
std.datetime:21040                                                        FAILED
std.datetime:21109                                                        FAILED
std.datetime:21178                                                        FAILED
std.datetime:22747                                                        FAILED
std.datetime:22970                                                        FAILED
std.datetime:23369                                                        FAILED
std.datetime:23424                                                        FAILED
std.datetime:25009                                                        FAILED
std.datetime:25234                                                        FAILED
std.datetime:25638                                                        FAILED
std.datetime:25694                                                        FAILED
std.conv:1879                                                             FAILED
std.conv:2436                                                             FAILED
std.conv:2571                                                             FAILED
std.conv:3500                                                             FAILED
std.algorithm:1539                                                      DISABLED

================= Summary ==============
1476 success, 36 failed, 4 disabled

(The disabled tests segfault)
Comment 1 Iain Buclaw 2013-04-04 14:50:18 CEST
Fixed GC-related problem in the compiler.

https://github.com/D-Programming-GDC/GDC/commit/0adf38c953db12a50e7fac48db321a49739f9b99


I wonder if those segv's you've found are now fixed.

Regards
Iain
Comment 2 Johannes Pfau 2013-04-04 18:45:59 CEST
I'll see if I can run the unit tests again but I used a custom gdc branch with patches which allows skipping failing tests. That code is quite outdated now so I have to update it first.
Comment 3 Iain Buclaw 2013-04-05 11:10:37 CEST
Another GC-related fix, and turned on 'make check-target-libphobos' which should run the library testsuite.


https://github.com/D-Programming-GDC/GDC/commit/67ef85a98938fc1584a8e1f4dbd2b354a736eaf2
Comment 4 Johannes Pfau 2013-04-06 16:42:06 CEST
2 are fixed but I've not verified if they were fixed by the GC changes.
I'll try to reduce the other two segvs and file new bug reports for them.

Overall the situation is much better now with only 13 failing tests:
std.complex:663               FAILED
std.complex:683               FAILED
std.typecons:3281             FAILED
std.range:2953                FAILED
std.range:8640                FAILED
std.math:327                  FAILED
std.math:441                  FAILED
std.math:1517                 FAILED
std.math:1528                 FAILED
std.math:1632                 FAILED
std.math:2999                 FAILED
std.conv:2487                 FAILED
std.conv:2622                 FAILED
Total results: Passed 1892 Failed 13 Disabled 2

./unittest --show-disabled
std.container:3623
std.algorithm:1721

Here's my fork with the "enhanced" unit test support in case you want to try it:
https://github.com/jpf91/GDC/commits/newUnittest
Comment 5 Iain Buclaw 2013-04-06 17:27:27 CEST
(In reply to comment #4)
> 2 are fixed but I've not verified if they were fixed by the GC changes.
> I'll try to reduce the other two segvs and file new bug reports for them.
> 
> Overall the situation is much better now with only 13 failing tests:
> std.complex:663               FAILED
> std.complex:683               FAILED
> std.typecons:3281             FAILED
> std.range:2953                FAILED
> std.range:8640                FAILED
> std.math:327                  FAILED
> std.math:441                  FAILED
> std.math:1517                 FAILED
> std.math:1528                 FAILED
> std.math:1632                 FAILED
> std.math:2999                 FAILED
> std.conv:2487                 FAILED
> std.conv:2622                 FAILED
> Total results: Passed 1892 Failed 13 Disabled 2
> 
> ./unittest --show-disabled
> std.container:3623
> std.algorithm:1721
> 
> Here's my fork with the "enhanced" unit test support in case you want to try
> it:
> https://github.com/jpf91/GDC/commits/newUnittest

Ah, but do they cause gdc to SEGV, or do they SEGV during runtime?

The fixes I did addressed SEGV during compilation of those two files you've shown to be disabled.
Comment 6 Johannes Pfau 2013-04-06 17:49:45 CEST
At runtime. There are no compiler ICEs or compiler segfaults when compiling the unittests AFAICS.
Comment 7 Iain Buclaw 2013-04-06 18:20:54 CEST
(In reply to comment #6)
> At runtime. There are no compiler ICEs or compiler segfaults when compiling the
> unittests AFAICS.

Excellent.  That should now allow us to do proper testing now then.
Comment 8 Iain Buclaw 2013-05-14 23:11:14 CEST
Updated results:

std/internal/math/errorfunction.d:222
FAILED
std/internal/math/gammafunction.d:367
FAILED
std/typecons.d:3293
FAILED
std/range.d:2995
FAILED
std/math.d:336
FAILED
std/conv.d:2524
FAILED