[phobos] inconsistent failing test in std.parallelism - minor changes to dmd/src
Ali Akhtarzada
ali.akhtarzada at gmail.com
Tue Nov 19 06:00:17 PST 2013
Hi people,
So I just started with this d stuff. Just cloned master source. Built dmd,
phobos and druntime and ran tests. Got a fail in std.parallelism, then
reran again and it passed. Did this a couple more times, failed again at
some point, but then passed again.
Is this a known issue?
Also, I did make some changes in the dmd/src already. Was getting a crap
load of warnings about logical && being nested inside logical || without
parenthesis. So I went through the source and added parenthesis to silence
that warning - mundane mechanical stuff :(
Build details:
- Osx Mavericks - x86_64
- dmd/src/: make MODEL=64 DEBUG=1
- druntime/: make MODEL=64 DEBUG=1 DMD=../dmd/src/dmd
- phobos/: make MODEL=64 DEBUG=1 DMD=../dmd/src/dmd
- dmd -man outputs: DMD v2.065-devel-ae7adb9 DEBUG
When I build dmd it seems to build with g++ on osx. Strange because I
thought gcc was removed as of osx 10.8. So g++ I think is just a wrapper
that calls clang internally. When I run g++ -v on my machine I get:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr
> --with-gxx-include-dir=/usr/include/c++/4.2.1
> Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
> Target: x86_64-apple-darwin13.0.0
> Thread model: posix
I thought it my be a script or a symlink but it doens't seem to be. Maybe
it's just a binary that translates g++ cmd args to clang++ or something...
dunno, but anyway...
The tests inside dmd/tests all pass fine, and the druntime tests pass
consistently as well after the changes I made (I did not make any
functional changes, though of course I could've retardedly messed up
parenthesis somewhere.
The failure:
Testing std.outbuffer: OK (took 0ms)
> totalCPUs = 4
> Testing std.parallelism: FAIL
> core.thread.ThreadException at src/core/thread.d(938): Unable to set thread
> priority
> ----------------
> 5 test_runner 0x00000001058239d3
> std.parallelism.TaskPool
> std.parallelism.TaskPool.__ctor(std.parallelism.AbstractTask*, int) + 147
> 6 test_runner 0x00000001058295c3 @trusted void
> std.parallelism.Task!(_D3std11parallelism17__unittestL3913_3FZv6refFunFKkZv,
> uint).Task.executeInNewThread(int) + 115
> 7 test_runner 0x0000000105824dab void
> std.parallelism.__unittestL3913_3() + 675
> 8 test_runner 0x0000000105822bc7 void
> std.parallelism.__modtest() + 19
> 9 test_runner 0x000000010503e4da bool
> test_runner.tester() + 430
> 10 test_runner 0x0000000105eaaeb9
> runModuleUnitTests + 193
> 11 test_runner 0x0000000105eb8157 void
> rt.dmain2._d_run_main(int, char**, extern (C) int
> function(char[][])*).runAll() + 23
> 12 test_runner 0x0000000105eb810d void
> rt.dmain2._d_run_main(int, char**, extern (C) int
> function(char[][])*).tryExec(scope void delegate()) + 45
> 13 test_runner 0x0000000105eb8083 _d_run_main +
> 443
> 14 test_runner 0x000000010503e1fa main + 34
> 15 libdyld.dylib 0x00007fff941d05fd start + 1
> 16 ??? 0x0000000000000002 0x0 + 2make[1]:
> *** [generated/osx/debug/64/unittest/std/parallelism] Error 1
I'm quite new to everything here, don't even really know d much, but looks
interesting and I would like to possibly help, time permitting. I'm also
not sure if this is the right place to go about asking these things? Should
I have posted to digitalmars.D instead? Do people just file a bug
immediately and let it go from there or is this the right place to get the
ball rolling or?
Guidance, help much appreciated
Cheers,
- Ali
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/phobos/attachments/20131119/402cdcbb/attachment.html>
More information about the phobos
mailing list