gdb/testsuite: Adjust some testcases to allow Windows pathnames

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>
This commit is contained in:
Sandra Loosemore
2023-09-05 18:48:22 +00:00
parent 317577025f
commit cb7926b3ef
4 changed files with 32 additions and 21 deletions

View 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" gdb_test_no_output "maint expand-symtabs maint-expand-symbols-header-file.h"
# Check that the include symtab was in fact expanded. # 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" \ gdb_test "maint info symtabs" \
"\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \ "\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \
"check header file psymtab expansion" "check header file psymtab expansion"
# Check that the symtab the include symtab was referring to was expanded. # 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" \ gdb_test "maint info symtabs" \
"\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \ "\r\n\t{ symtab $file_re \\(\\(struct symtab \\*\\) $hex\\)\r\n.*" \
"check source file psymtab expansion" "check source file psymtab expansion"

View File

@@ -280,10 +280,21 @@ proc_with_prefix test_setshow_history {} {
#get home directory path #get home directory path
set HOME "" set HOME ""
set STRINGHOME ""
set test "show environment HOME" set test "show environment HOME"
gdb_test_multiple $test $test { gdb_test_multiple $test $test {
-re "\nHOME = (\[^\r\n\]*)\[\r\n\]+$::gdb_prompt $" { -re "\nHOME = (\[^\r\n\]*)\[\r\n\]+$::gdb_prompt $" {
set HOME $expect_out(1,string) 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 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\"..*" \ "The filename in which to record the command history is \"[string_to_regexp $HOME]/foobar.baz\"..*" \
"show history filename (~/foobar.baz)" "show history filename (~/foobar.baz)"
gdb_test "p \$_gdb_setting(\"history filename\")" \ gdb_test "p \$_gdb_setting(\"history filename\")" \
" = \"[string_to_regexp $HOME]/foobar.baz\"" \ " = \"[string_to_regexp $STRINGHOME]/foobar.baz\"" \
"_gdb_setting history filename" "_gdb_setting history filename"
gdb_test "p \$_gdb_setting_str(\"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" "_gdb_setting_str history filename"
#get current working directory #get current working directory

View File

@@ -38,4 +38,4 @@ gdb_test "interpreter-exec mi -file-list-exec-source-files" \
".*{file=\"file1\\.txt\",fullname=\".+file1\\.txt\",debug-fully-read=\"\[^\"\]+\"}.*" ".*{file=\"file1\\.txt\",fullname=\".+file1\\.txt\",debug-fully-read=\"\[^\"\]+\"}.*"
# And `info sources' should return the fullname incl. the directories. # And `info sources' should return the fullname incl. the directories.
gdb_test "info sources" {[/]file1\.txt.*} gdb_test "info sources" {.+file1\.txt.*}

View File

@@ -118,16 +118,16 @@ proc check_info_sources { debug_fully_read } {
[mi_list "files" \ [mi_list "files" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
[mi_field "debug-fully-read" "${debug_fully_read}"]] \ [mi_field "debug-fully-read" "${debug_fully_read}"]] \
".*"] ".*"]
set p2 \ set p2 \
[mi_list "files" \ [mi_list "files" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
[mi_field "debug-fully-read" "true"]] \ [mi_field "debug-fully-read" "true"]] \
".*"] ".*"]
} else { } else {
@@ -135,16 +135,16 @@ proc check_info_sources { debug_fully_read } {
[mi_list "files" \ [mi_list "files" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
[mi_field "debug-fully-read" "true"]] \ [mi_field "debug-fully-read" "true"]] \
".*"] ".*"]
set p2 \ set p2 \
[mi_list "files" \ [mi_list "files" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
[mi_field "debug-fully-read" "${debug_fully_read}"]] \ [mi_field "debug-fully-read" "${debug_fully_read}"]] \
".*"] ".*"]
} }
@@ -156,8 +156,8 @@ proc check_info_sources { debug_fully_read } {
set p [mi_list "files" \ set p [mi_list "files" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
[mi_field "debug-fully-read" "${debug_fully_read}"]]] [mi_field "debug-fully-read" "${debug_fully_read}"]]]
mi_gdb_test "-file-list-exec-source-files --basename -- base" ".*\\^done,${p}" \ mi_gdb_test "-file-list-exec-source-files --basename -- base" ".*\\^done,${p}" \
"-file-list-exec-source-files --basename -- base" "-file-list-exec-source-files --basename -- base"
@@ -171,13 +171,13 @@ proc check_info_sources { debug_fully_read } {
set p [mi_list "files" \ set p [mi_list "files" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "filename" "\[^\"\]+/mi-info-sources(\.debug)?"] \ [mi_field "filename" "\[^\"\]+mi-info-sources(\.debug)?"] \
[mi_field "debug-info" "${debug_info}"] \ [mi_field "debug-info" "${debug_info}"] \
[mi_list "sources" \ [mi_list "sources" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources\\.c"] \
[mi_field "debug-fully-read" "true"]] \ [mi_field "debug-fully-read" "true"]] \
".*"]]] ".*"]]]
mi_gdb_test "-file-list-exec-source-files --group-by-objfile" \ 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" \ set p [mi_list "files" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "filename" "\[^\"\]+/mi-info-sources(\.debug)?"] \ [mi_field "filename" "\[^\"\]+mi-info-sources(\.debug)?"] \
[mi_field "debug-info" "${debug_info}"] \ [mi_field "debug-info" "${debug_info}"] \
[mi_list "sources" \ [mi_list "sources" \
".*" \ ".*" \
[mi_tuple "" \ [mi_tuple "" \
[mi_field "file" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "file" "\[^\"\]*mi-info-sources-base\\.c"] \
[mi_field "fullname" "\[^\"\]+/mi-info-sources-base\\.c"] \ [mi_field "fullname" "\[^\"\]+mi-info-sources-base\\.c"] \
[mi_field "debug-fully-read" "${debug_fully_read}"]] \ [mi_field "debug-fully-read" "${debug_fully_read}"]] \
".*"]]] ".*"]]]
mi_gdb_test "-file-list-exec-source-files --group-by-objfile" \ mi_gdb_test "-file-list-exec-source-files --group-by-objfile" \