Subject: bug#79077: closed (Re: bug#79077: host_execute and non-zero exit status)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 26 Jul 2025 04:22:02 +0000

Your bug report

#79077: host_execute and non-zero exit status

which was filed against the dejagnu package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
79077: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79077
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#79077: host_execute and non-zero exit status
From: Jacob Bachmeyer <[email-masked]>
To: Marc Nieper-Wißkirchen <[email-masked]>
Cc: [email-masked]
Date: Fri, 25 Jul 2025 23:21:19 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

On 7/25/25 06:30, Marc Nieper-Wißkirchen wrote:
> Hi,
>
> Am Fr., 25. Juli 2025 um 04:14 Uhr schrieb Jacob Bachmeyer<[email-masked]>:
>
> [...]
>
>> Am Do., 24. Juli 2025 um 05:09 Uhr schrieb Jacob Bachmeyer<[email-masked]>:
>>
>> On 7/23/25 02:31, Marc Nieper-Wißkirchen wrote:
>> [...]
>>
>> [...]  DejaGnu generally supports running tests on "remote" target boards and a target connected over a serial line is unlikely to return an exit code.  The only way to be sure that a dependency on the exit code will not creep in is to ignore the exit code.
> With the recent addition of the "END" token, this is probably moot;
> without, how would have DejaGnu handled a test running remotely, say
> over a serial line, where the connection drops early? I saw a non-zero
> exit code as an analogue of such a dropped connection, which could be
> expressed by an "UNRESOLVED" result.

Previously, DejaGnu gave no indication that anything was wrong if a unit 
test program failed to complete, although older versions used a "Totals" 
line as an implicit end marker.  This was changed when the unit testing 
protocol was documented to avoid possible misfires if a unit test 
happens to emit a line beginning with "Totals"; the new "END" marker 
uses a syntax that is explicitly documented as reserved for unit test 
messages to the framework.

>> [...]
>>
>> An initial solution has been pushed to Savannah on the PR79077 branch. DejaGnu can now be run directly from a Git checkout, you should be able to simply pass RUNTEST=/full/name/of/working/tree/runtest on the "make check" command line.
> That is great news. Thank you! Moreover, thank you very much for your
> ideas about the Valgrind mapper; very helpful, indeed.

You are welcome.

Since an improvement has been merged to Git master, this closes the bug 
report.

-- Jacob

Subject: host_execute and non-zero exit status
From: Marc Nieper-Wißkirchen <[email-masked]>
To: [email-masked]
Date: Wed, 23 Jul 2025 09:31:21 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

The host_execute procedure in dejagnu.exp (see [1]) doesn't seem to
check the exit status of the executed test programs. A test program
that simply aborts (e.g. using the C function of the same name) won't
cause any testsuite failures. This seems brittle and like a
misfeature.

What is the supposed way to deal with this?

Thanks,

Marc

--

[1] https://www.gnu.org/software/dejagnu/manual/Running-unit-tests.html