Running the dmd tests on Gentoo 2.6.32 fails with an unexpected EBADF. -------------------- dmd/test$ make (== snip ==) ... runnable/bench1.d -d (-inline -release -gc -O -unittest -fPIC) sh: 10000: Bad file descriptor Test failed. The logged output: (== snip ==) -------------------- The problem is the test driver. It issues "test_results/runnable/bench1 10000> " to the shell, in which the "10000>" part is wrong. Patch: ==================== --- test/d_do_test.d +++ test/d_do_test.d @@ -204,7 +204,7 @@ void execute(ref File f, string command, bool expectpass) scope(exit) if (std.file.exists(filename)) std.file.remove(filename); f.writeln(command); - auto rc = system(command ~ "> " ~ filename ~ " 2>&1"); + auto rc = system(command ~ " > " ~ filename ~ " 2>&1"); f.write(readText(filename));
Odd that I don't see the same problem, but either way, that change has been checked in.