public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH][gdb/testsuite] Clean up stale exec in gdb_compile_pascal
@ 2019-08-16 16:26 Tom de Vries
  2019-08-20 15:07 ` Tom Tromey
  0 siblings, 1 reply; 2+ messages in thread
From: Tom de Vries @ 2019-08-16 16:26 UTC (permalink / raw)
  To: gdb-patches; +Cc: Pierre Muller, Keith Seitz

Hi,

When running a pascal test with the stabs target board:
...
$ test=gdb.pascal/case-insensitive-symbols.exp
$ cd build/gdb/testsuite
$ make check RUNTESTFLAGS="$test --target_board=stabs"
...
we get:
...
nr of untested testcases         1
nr of unsupported tests          1
...
due to:
...
Error: Illegal parameter: -gstabs+^M
Error: /usr/bin/ppcx64 returned an error exitcode^M
...

OTOH, when running the same pascal test without the stabs target board:
...
$ make check RUNTESTFLAGS="$test"
...
we get:
...
nr of expected passes            20
...

But when subsequently again running with the stabs target board:
...
$ make check RUNTESTFLAGS="$test --target_board=stabs"
...
we now get:
...
nr of expected passes            20
...

The problem is that gdb_compile_pascal determines success based on existence
of the exec after compilation:
...
    if ![file exists $destfile] {
        unsupported "Pascal compilation failed: $result"
        return "Pascal compilation failed."
    }
...
without removing the exec before compilation, which allows a stale exec to
make it seem as if compilation has succeeded.

Fix this by removing the stale exec before compilation.

OK for trunk?

Thanks,
- Tom

[gdb/testsuite] Clean up stale exec in gdb_compile_pascal

gdb/testsuite/ChangeLog:

2019-08-16  Tom de Vries  <tdevries@suse.de>

	* lib/pascal.exp (gdb_compile_pascal): Remove $destfile before
	compilation.

---
 gdb/testsuite/lib/pascal.exp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gdb/testsuite/lib/pascal.exp b/gdb/testsuite/lib/pascal.exp
index 796c2a781e..dcdbb8d1f9 100644
--- a/gdb/testsuite/lib/pascal.exp
+++ b/gdb/testsuite/lib/pascal.exp
@@ -153,6 +153,8 @@ proc gdb_compile_pascal {source destfile type options} {
 	pascal_init
     }
 
+    file delete $destfile
+
     if { $pascal_compiler_is_fpc == 1 } {
         set result [fpc_compile $source $destfile $type $options]
     } elseif { $pascal_compiler_is_gpc == 1 } {

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH][gdb/testsuite] Clean up stale exec in gdb_compile_pascal
  2019-08-16 16:26 [PATCH][gdb/testsuite] Clean up stale exec in gdb_compile_pascal Tom de Vries
@ 2019-08-20 15:07 ` Tom Tromey
  0 siblings, 0 replies; 2+ messages in thread
From: Tom Tromey @ 2019-08-20 15:07 UTC (permalink / raw)
  To: Tom de Vries; +Cc: gdb-patches, Pierre Muller, Keith Seitz

>>>>> "Tom" == Tom de Vries <tdevries@suse.de> writes:

Tom> 2019-08-16  Tom de Vries  <tdevries@suse.de>

Tom> 	* lib/pascal.exp (gdb_compile_pascal): Remove $destfile before
Tom> 	compilation.

This code is already a little weird, because gpc_compile uses
"remote_exec host", but then the code checks for file existence on the
machine where dejagnu is being run.

However, your patch doesn't make this any worse, so it is ok.
Thanks.

Tom

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-08-20 15:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-16 16:26 [PATCH][gdb/testsuite] Clean up stale exec in gdb_compile_pascal Tom de Vries
2019-08-20 15:07 ` Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).