#exp_internal 1
set binexp [string_to_regexp $binfile]
-set run_re [join [list "\r\n\032\032post-prompt\r\nStarting program: $binexp " \
- "\(\(\r\nReading \[^\r\n\]+\)|\(\r\nwarning: File transfers from remote targets can be slow\[^\r\n\]+\)\)*" \
- "\(\r\nwarning: Skipping \[^\r\n\]+ .gdb_index section in \[^\r\n\]+\r\nDo \"set use-deprecated-index-sections on\" before the file is read\r\nto use the section anyway\\.\)?" \
- "\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n" \
- "\032\032starting\(\(\r\nReading \[^\r\n\]+\)|\(\r\nwarning: File transfers from remote targets can be slow\[^\r\n\]+\)\)*" \
- "\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n" \
- "\032\032breakpoint 1\r\n\r\n" \
- "Breakpoint 1, \r\n" \
- "\032\032frame-begin 0 $hex\r\n\r\n" \
- "\032\032frame-function-name\r\n" \
- "main\r\n" \
- "\032\032frame-args\r\n \\(\\)\r\n" \
- "\032\032frame-source-begin\r\n at \r\n" \
- "\032\032frame-source-file\r\n.*annota1.c\r\n" \
- "\032\032frame-source-file-end\r\n:\r\n" \
- "\032\032frame-source-line\r\n$main_line\r\n" \
- "\032\032frame-source-end\r\n\r\n\r\n" \
- "\032\032source.*$srcfile:$main_line:.*:beg:$hex\r\n\r\n" \
- "\032\032frame-end\r\n\r\n" \
- "\032\032stopped.*$gdb_prompt$" ] "" ]
+set warning_slow_re \
+ "warning: File transfers from remote targets can be slow\[^\r\n\]+"
+set warning_gdb_index_re \
+ [multi_line \
+ "warning: Skipping \[^\r\n\]+ .gdb_index section in \[^\r\n\]+" \
+ "Do \"set use-deprecated-index-sections on\" before the file is read" \
+ "to use the section anyway\\."]
+set reading_re \
+ "Reading \[^\r\n\]+"
+
+set run_re \
+ [list \
+ "\r\n\032\032post-prompt\r\nStarting program: $binexp " \
+ "\(\(\r\n$reading_re\)|\(\r\n$warning_slow_re\)\)*" \
+ "\(\r\n$warning_gdb_index_re\)?" \
+ "\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n" \
+ "\032\032starting\(\(\r\n$reading_re\)|\(\r\n$warning_slow_re\)\)*" \
+ "\(\(\r\n\r\n\032\032frames-invalid\)|\(\r\n\r\n\032\032breakpoints-invalid\)\)*\r\n\r\n" \
+ "\032\032breakpoint 1\r\n\r\n" \
+ "Breakpoint 1, \r\n" \
+ "\032\032frame-begin 0 $hex\r\n\r\n" \
+ "\032\032frame-function-name\r\n" \
+ "main\r\n" \
+ "\032\032frame-args\r\n \\(\\)\r\n" \
+ "\032\032frame-source-begin\r\n at \r\n" \
+ "\032\032frame-source-file\r\n.*annota1.c\r\n" \
+ "\032\032frame-source-file-end\r\n:\r\n" \
+ "\032\032frame-source-line\r\n$main_line\r\n" \
+ "\032\032frame-source-end\r\n\r\n\r\n" \
+ "\032\032source.*$srcfile:$main_line:.*:beg:$hex\r\n\r\n" \
+ "\032\032frame-end\r\n\r\n" \
+ "\032\032stopped"]
+
+set run_re [join $run_re ""]
gdb_test_multiple "run" "run until main breakpoint" {
- -re $run_re {
+ -re $run_re.*$gdb_prompt$ {
pass $gdb_test_name
}
}