GNU bug report logs - #41824
Dejagnu's unknown proc aborts testsuite run when triggered in test-case

Previous Next

Package: dejagnu;

Reported by: Tom de Vries <tdevries <at> suse.de>

Date: Fri, 12 Jun 2020 08:36:01 UTC

Owned by: jcb62281 <at> gmail.com

Severity: normal

Done: Jacob Bachmeyer <jcb62281 <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #52 received at 41824 <at> debbugs.gnu.org (full text, mbox):

From: Pedro Alves <pedro <at> palves.net>
To: Pedro Alves <palves <at> redhat.com>, jcb62281 <at> gmail.com
Cc: Tom de Vries <tdevries <at> suse.de>, 41824 <at> debbugs.gnu.org
Subject: Re: bug#41824: Dejagnu's unknown proc aborts testsuite run when
 triggered in test-case
Date: Fri, 26 Jun 2020 11:08:11 +0100
On 6/26/20 10:53 AM, Pedro Alves wrote:
> 
>> to repeat at the very end of a test run with a big warning about test cases that crashed?
> I did not suggest to repeat anything.
> 

I misunderstood you here -- I somehow thought that that by "repeat" you meant
re-running the testcase.

Still, I would not suggest to repeat the error.  Let me clarify -- with this:

~~~~
diff --git c/gdb/testsuite/gdb.base/break.exp w/gdb/testsuite/gdb.base/break.exp
index 8c7ce42d805..056252c0677 100644
--- c/gdb/testsuite/gdb.base/break.exp
+++ w/gdb/testsuite/gdb.base/break.exp
@@ -15,6 +15,9 @@
 
 # This file was written by Rob Savoye. (rob <at> cygnus.com)
 
+set a 1
+set a(1) 1
+
~~~~

You get, if you run two testcases, and the other one manages to run
first:

$ make check TESTS="*/break.exp */schedlock.exp" 
make[1]: Entering directory '/home/pedro/brno/pedro/gdb/mygit/build/gdb/testsuite'
Nothing to be done for all...
make check-single
make[2]: Entering directory '/home/pedro/brno/pedro/gdb/mygit/build/gdb/testsuite'
rootme=`pwd`; export rootme; srcdir=/home/pedro/gdb/mygit/src/gdb/testsuite ; export srcdir ; EXPECT=`if [ "${READ1}" != "" ] ; then echo ${rootme}/expect-read1; elif [ -f ${rootme}/../../expect/expect ] ; then echo ${rootme}/../../expect/expect ; else echo expect ; fi` ; export EXPECT ; EXEEXT= ; export EXEEXT ;    LD_LIBRARY_PATH=$rootme/../../expect:$rootme/../../libstdc++:$rootme/../../tk/unix:$rootme/../../tcl/unix:$rootme/../../bfd:$rootme/../../opcodes:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; if [ -f ${rootme}/../../expect/expect ] ; then TCL_LIBRARY=${srcdir}/../../tcl/library ; export TCL_LIBRARY ; fi ; runtest --status  gdb.base/break.exp gdb.threads/schedlock.exp 
NOTE: Dejagnu's default_target_compile is missing support for Go, using local override
NOTE: Dejagnu's default_target_compile is missing support for Rust, using local override
Test run by pedro on Fri Jun 26 11:03:38 2020
Native configuration is x86_64-pc-linux-gnu

                === gdb tests ===

Schedule of variations:
    unix

Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/pedro/gdb/mygit/src/gdb/testsuite/config/unix.exp as tool-and-target-specific interface file.
Running /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.threads/schedlock.exp ...
Running /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.base/break.exp ...
ERROR: tcl error sourcing /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.base/break.exp.
ERROR: can't set "a(1)": variable isn't array
    while executing
"set a(1) 1"
    (file "/home/pedro/gdb/mygit/src/gdb/testsuite/gdb.base/break.exp" line 19)
    invoked from within
"source /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.base/break.exp"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 source /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.base/break.exp"
    invoked from within
"catch "uplevel #0 source $test_file_name""

                === gdb Summary ===

# of expected passes            208
/home/pedro/brno/pedro/gdb/mygit/build/gdb/gdb version  10.0.50.20200625-git -nw -nx -data-directory /home/pedro/brno/pedro/gdb/mygit/build/gdb/testsuite/../data-directory 

make[2]: *** [Makefile:206: check-single] Error 2
make[2]: Leaving directory '/home/pedro/brno/pedro/gdb/mygit/build/gdb/testsuite'
make[1]: *** [Makefile:159: check] Error 2
make[1]: Leaving directory '/home/pedro/brno/pedro/gdb/mygit/build/gdb/testsuite'
make: *** [Makefile:1628: check] Error 2


~~~~

Now, you already have an indication that something went wrong
because make existed with error.  But people may miss that.
The issue for me is that the "gdb Summary" tally did not
mention the aborted testcase.  I would like to see something
like this instead:

 # of expected passes            208
 # of nasty OMG FIX! tcl errors    1

:-)

Your UNRESOLVED is of course better than the status quo.

Thanks,
Pedro Alves




This bug report was last modified 4 years and 314 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.