|
Boost-Build : |
From: K. Noel Belcourt (kbelco_at_[hidden])
Date: 2007-11-09 22:48:25
On Nov 9, 2007, at 8:44 PM, K. Noel Belcourt wrote:
>
> On Nov 9, 2007, at 5:59 PM, Rene Rivera wrote:
>
>> K. Noel Belcourt wrote:
>>> There's a problem in execunix.c where I don't set the correct
>>> process
>>> termination status if the process crashes or otherwise fails to exit
>>> through normal channels (by calling exit() or_exit(), or exiting
>>> through main). This patch marks the process termination status as
>>> having failed if it doesn't exit through normal channels.
>>>
>>> If there's no objection, I'll get this committed to trunk.
>>
>> No objection, only a question. Is this something that affects testing
>> results?
>
> Hi Rene,
>
> Yes, I'm seeing some inconsistent testing results. Here's an example
> of this inconsistency. This test (test/prg_exec_fail2.test) ran and
> appears to have failed with a divide by zero error (according to the
> results/bjam.log:
>
> [ from bjam.log ]
>
> testing.capture-output /var/scratch2/boost/results/boost/bin.v2/libs/
> test/test/prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.run
>
> "/var/scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2" > "/var/
> scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.output" 2>&1
> status=$?
> echo >> "/var/scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.output"
> echo EXIT STATUS: $status >> "/var/scratch2/boost/results/boost/
> bin.v2/libs/test/test/prg_exec_fail2.test/pathscale-2.5/debug/
> prg_exec_fail2.output"
> if test $status -eq 0 ; then
> cp "/var/scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.output" "/var/
> scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.run"
> fi
> verbose=0
> if test $status -ne 0 ; then
> verbose=1
> fi
> if test $verbose -eq 1 ; then
> echo ====== BEGIN OUTPUT ======
> cat "/var/scratch2/boost/results/boost/bin.v2/libs/test/test/
> prg_exec_fail2.test/pathscale-2.5/debug/prg_exec_fail2.output"
> echo ====== END OUTPUT ======
> fi
> exit $status
>
> ====== BEGIN OUTPUT ======
>
> **** exception(210): signal: integer divide by zero; address of
> failing instruction: 0x0040265a
> ******** errors detected; see standard output for details ********
>
> EXIT STATUS: 200
>
>
> The test result in bjam.log has an EXIT STATUS of 200 yet, according
> to the Sandia-pathscale 2.5 results at beta.boost.org, this test
> passed. I can't figure out how the page results are generated (and
Oh, never mind. It looks like this test is a run_fail test so that's
why it passes.
-- Noel
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk