Fix Windows-target testing in mi_gdb_file_cmd
authorJoseph Myers <joseph@codesourcery.com>
Wed, 18 Nov 2020 19:44:20 +0000 (19:44 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 18 Nov 2020 19:44:20 +0000 (19:44 +0000)
Similar to my recent fix for gdb_file_cmd, mi_gdb_file_cmd also runs
into problems when GCC has created foo.exe given "-o foo".

Apply exactly the same fix there as in gdb_file_cmd.  This allows many
more tests to succeed for Windows target that previously fell over.

2020-11-18  Joseph Myers  <joseph@codesourcery.com>

* lib/mi-support.exp (mi_gdb_file_cmd): Check for case where
$arg.exe exists but $arg does not.

gdb/testsuite/ChangeLog
gdb/testsuite/lib/mi-support.exp

index 14b3da5911619e51cd68b2cbf4e8daf3c701a7fd..3aa06fa72c939f95c0172446f18e7dd3dbfee1d8 100644 (file)
@@ -1,3 +1,8 @@
+2020-11-18  Joseph Myers  <joseph@codesourcery.com>
+
+       * lib/mi-support.exp (mi_gdb_file_cmd): Check for case where
+       $arg.exe exists but $arg does not.
+
 2020-11-17  Gary Benson <gbenson@redhat.com>
 
        * gdb.trace/trace-common.h (x86_trace_dummy): Add
index 8e7b0ab79e2b22e38c0049b088616988a71134b5..bfc8edcd8d3d6bba670712f93f36de76b762435c 100644 (file)
@@ -505,6 +505,11 @@ proc mi_gdb_file_cmd { arg } {
     global last_loaded_file
     upvar timeout timeout
 
+    # GCC for Windows target may create foo.exe given "-o foo".
+    if { ![file exists $arg] && [file exists "$arg.exe"] } {
+       set arg "$arg.exe"
+    }
+
     set last_loaded_file $arg
 
     if [is_remote host] {