PR gdb/13860: make "-exec-foo"'s MI output equal to "foo"'s MI output.
[deliverable/binutils-gdb.git] / gdb / testsuite / lib / mi-support.exp
index 1e8fee66885c3dd4c9a9d820c1bd1b7eccac0671..213073acba9ad4e9559d975f8c972026483d65b7 100644 (file)
@@ -1028,6 +1028,8 @@ proc mi_expect_stop { reason func args file line extra test } {
     global thread_selected_re
     global breakpoint_re
 
+    set any "\[^\n\]*"
+
     set after_stopped ""
     set after_reason ""
     if { [llength $extra] == 2 } {
@@ -1070,6 +1072,20 @@ proc mi_expect_stop { reason func args file line extra test } {
        return
     }
 
+    if { $reason == "solib-event" } {
+       set pattern "\\*stopped,reason=\"solib-event\",thread-id=\"$decimal\",stopped-threads=$any\r\n($thread_selected_re|$breakpoint_re)*$prompt_re"
+       verbose -log "mi_expect_stop: expecting: $pattern"
+       gdb_expect {
+           -re "$pattern" {
+               pass "$test"
+           }
+           timeout {
+               fail "$test (unknown output after running)"
+           }
+       }
+       return
+    }
+
     set args "\\\[$args\\\]"
 
     set bn ""
@@ -1087,8 +1103,6 @@ proc mi_expect_stop { reason func args file line extra test } {
 
     set a $after_reason
 
-    set any "\[^\n\]*"
-
     verbose -log "mi_expect_stop: expecting: \\*stopped,${r}${a}${bn}frame=\{addr=\"$hex\",func=\"$func\",args=$args,(?:file=\"$any$file\",fullname=\"${fullname_syntax}$file\",line=\"$line\"|from=\"$file\")\}$after_stopped,thread-id=\"$decimal\",stopped-threads=$any\r\n($thread_selected_re|$breakpoint_re)*$prompt_re"
     gdb_expect {
        -re "\\*stopped,${r}${a}${bn}frame=\{addr=\"$hex\",func=\"$func\",args=$args,(?:file=\"$any$file\",fullname=\"${fullname_syntax}$file\",line=\"($line)\"|from=\"$file\")\}$after_stopped,thread-id=\"$decimal\",stopped-threads=$any\r\n($thread_selected_re|$breakpoint_re)*$prompt_re" {
This page took 0.025604 seconds and 4 git commands to generate.