gdb/testsuite: Adjust some testcases to allow Windows pathnames
authorSandra Loosemore <sandra@codesourcery.com>
Tue, 5 Sep 2023 18:48:22 +0000 (18:48 +0000)
committerSandra Loosemore <sandra@codesourcery.com>
Tue, 5 Sep 2023 18:48:22 +0000 (18:48 +0000)
This patch fixes some testcases that formerly had patterns with
hardwired "/" pathname separators in them, which broke when testing on
(remote) Windows host.

Reviewed-By: Tom Tromey <tom@tromey.com>
Approved-By: Tom Tromey <tom@tromey.com>
gdb/testsuite/gdb.base/maint-expand-symbols-header-file.exp
gdb/testsuite/gdb.base/setshow.exp
gdb/testsuite/gdb.dwarf2/dw2-filename.exp
gdb/testsuite/gdb.mi/mi-info-sources.exp

index d38d2ab7398cba132973075d8327bf351d4b23ee..43b5aabea3c6e62e4b31fbda3a024b3f263331a9 100644 (file)
@@ -40,13 +40,13 @@ gdb_test_no_output "maint info symtabs" $test
 gdb_test_no_output "maint expand-symtabs maint-expand-symbols-header-file.h"
 
 # Check that the include symtab was in fact expanded.
-set file_re "\[^\r\n\]*/maint-expand-symbols-header-file.h"
+set file_re "\[^\r\n\]*maint-expand-symbols-header-file.h"
 gdb_test "maint info symtabs" \
     "\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \
     "check header file psymtab expansion"
 
 # Check that the symtab the include symtab was referring to was expanded.
-set file_re "\[^\r\n\]*/maint-expand-symbols-header-file.c"
+set file_re "\[^\r\n\]*maint-expand-symbols-header-file.c"
 gdb_test "maint info symtabs" \
     "\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \
     "check source file psymtab expansion"
index 8c160aa560ee9c2e08a0522bb6612fccbfd34c7b..ef01b6087f7f91d1a2ce148d842ddffd606006e4 100644 (file)
@@ -280,10 +280,21 @@ proc_with_prefix test_setshow_history {} {
 
     #get home directory path
     set HOME ""
+    set STRINGHOME ""
     set test "show environment HOME"
     gdb_test_multiple $test $test {
        -re "\nHOME = (\[^\r\n\]*)\[\r\n\]+$::gdb_prompt $" {
            set HOME $expect_out(1,string)
+           if { [ishost *-*-mingw*] } {
+               # STRINGHOME is how HOME prints with C string escapes.
+               # Specifically, all backslashes "\" in the pathname
+               # string have to be escaped as "\\".  If you have other
+               # weird characters in your HOME pathname that need
+               # escaping too, maybe you shouldn't do that.  :-P
+               regsub -all {\\} $HOME {\\\\} STRINGHOME
+           } else {
+               set STRINGHOME $HOME
+           }
            pass $test
        }
     }
@@ -297,10 +308,10 @@ proc_with_prefix test_setshow_history {} {
        "The filename in which to record the command history is \"[string_to_regexp $HOME]/foobar.baz\"..*" \
        "show history filename (~/foobar.baz)"
     gdb_test "p \$_gdb_setting(\"history filename\")" \
-       " = \"[string_to_regexp $HOME]/foobar.baz\"" \
+       " = \"[string_to_regexp $STRINGHOME]/foobar.baz\"" \
        "_gdb_setting history filename"
     gdb_test "p \$_gdb_setting_str(\"history filename\")" \
-       " = \"[string_to_regexp $HOME]/foobar.baz\"" \
+       " = \"[string_to_regexp $STRINGHOME]/foobar.baz\"" \
        "_gdb_setting_str history filename"
 
     #get current working directory
index 3bdac4c1cb8d044a26b6a2ce3572be2d630ac22f..c0ee3ac0d3f3a2a3e6afef521af6e96253f887e7 100644 (file)
@@ -38,4 +38,4 @@ gdb_test "interpreter-exec mi -file-list-exec-source-files" \
     ".*{file=\"file1\\.txt\",fullname=\".+file1\\.txt\",debug-fully-read=\"\[^\"\]+\"}.*"
 
 # And `info sources' should return the fullname incl. the directories.
-gdb_test "info sources" {[/]file1\.txt.*}
+gdb_test "info sources" {.+file1\.txt.*}
index f639f3cdef9bc5155975e3ba022061a1c412a776..3778ccb3fbe10760a64879629e6ec121e697beb9 100644 (file)
@@ -118,16 +118,16 @@ proc check_info_sources { debug_fully_read } {
                [mi_list "files" \
                     ".*" \
                     [mi_tuple "" \
-                         [mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \
-                         [mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \
+                         [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
+                         [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
                          [mi_field "debug-fully-read" "${debug_fully_read}"]] \
                     ".*"]
            set p2 \
                [mi_list "files" \
                     ".*" \
                     [mi_tuple "" \
-                         [mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \
-                         [mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \
+                         [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
+                         [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
                          [mi_field "debug-fully-read" "true"]] \
                     ".*"]
        } else {
@@ -135,16 +135,16 @@ proc check_info_sources { debug_fully_read } {
                [mi_list "files" \
                     ".*" \
                     [mi_tuple "" \
-                         [mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \
-                         [mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \
+                         [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
+                         [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
                          [mi_field "debug-fully-read" "true"]] \
                     ".*"]
            set p2 \
                [mi_list "files" \
                     ".*" \
                     [mi_tuple "" \
-                         [mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \
-                         [mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \
+                         [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
+                         [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
                          [mi_field "debug-fully-read" "${debug_fully_read}"]] \
                     ".*"]
        }
@@ -156,8 +156,8 @@ proc check_info_sources { debug_fully_read } {
 
        set p [mi_list "files" \
                   [mi_tuple "" \
-                       [mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \
-                       [mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \
+                       [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
+                       [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
                        [mi_field "debug-fully-read" "${debug_fully_read}"]]]
        mi_gdb_test "-file-list-exec-source-files --basename -- base" ".*\\^done,${p}" \
            "-file-list-exec-source-files --basename -- base"
@@ -171,13 +171,13 @@ proc check_info_sources { debug_fully_read } {
 
        set p [mi_list "files" \
                   [mi_tuple "" \
-                       [mi_field "filename" "\[^\"\]+/mi-info-sources(\.debug)?"] \
+                       [mi_field "filename" "\[^\"\]+mi-info-sources(\.debug)?"] \
                        [mi_field "debug-info" "${debug_info}"] \
                        [mi_list "sources" \
                             ".*" \
                             [mi_tuple "" \
-                                 [mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \
-                                 [mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \
+                                 [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
+                                 [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
                                  [mi_field "debug-fully-read" "true"]] \
                             ".*"]]]
        mi_gdb_test "-file-list-exec-source-files --group-by-objfile" \
@@ -186,13 +186,13 @@ proc check_info_sources { debug_fully_read } {
 
        set p [mi_list "files" \
                   [mi_tuple "" \
-                       [mi_field "filename" "\[^\"\]+/mi-info-sources(\.debug)?"] \
+                       [mi_field "filename" "\[^\"\]+mi-info-sources(\.debug)?"] \
                        [mi_field "debug-info" "${debug_info}"] \
                        [mi_list "sources" \
                             ".*" \
                             [mi_tuple "" \
-                                 [mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \
-                                 [mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \
+                                 [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
+                                 [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
                                  [mi_field "debug-fully-read" "${debug_fully_read}"]] \
                             ".*"]]]
        mi_gdb_test "-file-list-exec-source-files --group-by-objfile" \