Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* Expect fails to recognize regexp
@ 2002-09-13 11:06 Corinna Vinschen
  2002-09-13 11:10 ` David Carlton
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Corinna Vinschen @ 2002-09-13 11:06 UTC (permalink / raw)
  To: gdb

Hi,

I'm trying to fix an error in the testsuite lib but I'm stuck at one
point.  For some mysterious reason, I can't get a regexp right.

Ok, the original preoblem I'm trying to solve is, that in lib/gdb.exp,
proc rerun_to_main() the procedure doesn't take into account, that
some targets never actually exit, but instead are programatically
trapped in some _exit function.

This means that rerun_to_main() must be able to manage the situation
that gdb not just reruns, but first asks 

  The program being debugged has been started already.
  Start it from the beginning? (y or n)

What I did was adding the following patch to gdb.exp:

Index: lib/gdb.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/lib/gdb.exp,v
retrieving revision 1.26
diff -u -p -r1.26 gdb.exp
--- lib/gdb.exp	13 Sep 2002 17:20:11 -0000	1.26
+++ lib/gdb.exp	13 Sep 2002 17:59:35 -0000
@@ -1685,6 +1685,10 @@ proc rerun_to_main {} {
   } else {
     send_gdb "run\n"
     gdb_expect {
+      -re "The program .* has been started already.*y or n. $" {
+	  send_gdb "y\n"
+	  exp_continue
+      }
       -re "Starting program.*$gdb_prompt $"\
 	      {pass "rerun to main" ; return 0}
       -re "$gdb_prompt $"\

but it doesn't work!  I tried various... uhm... variations of the
expression, include simple stuff as

	-re "The program.*"

or moving the -re back and forth in the gdb_expect expression but to
no avail.  The result in gdb.log was always the same:

  (gdb) PASS: gdb.base/ena-dis-br.exp: continue until exit at no stop
  run^M 
  The program being debugged has been started already.^M
  Start it from the beginning? (y or n) FAIL: gdb.base/ena-dis-br.exp:
  (timeout) rerun to main

As you can see, there's no 'y' in the log so expect didn't recognize
the expression at all.

Does anybody have an idea what's going on here?

Corinna

-- 
Corinna Vinschen
Cygwin Developer
Red Hat, Inc.
mailto:vinschen@redhat.com


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2002-09-14  9:28 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-09-13 11:06 Expect fails to recognize regexp Corinna Vinschen
2002-09-13 11:10 ` David Carlton
2002-09-13 11:15 ` Daniel Jacobowitz
2002-09-13 11:24 ` Elena Zannoni
2002-09-13 14:23   ` Corinna Vinschen
2002-09-13 15:01     ` Daniel Jacobowitz
2002-09-14  2:28       ` Corinna Vinschen
2002-09-13 17:53 ` Felix Lee

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox