This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[rfa/testsuite] gdb1250.exp: Handle pending breakpoint in shared library


Here is another attempt to fix gdb1250.exp so that it works with
the new 'pending breakpoint' feature.

I would like to get this fixed so that I can take it off my list
of regressions for binutils binutils-2_15-branch versus binutils 2.14.

Tested on: native i686-pc-linux-gnu, gcc 2.95.3 3.3.3 HEAD,
binutils 2.14 binutils-2_15-branch HEAD, dwarf-2 stabs+.

I'm not sure that "run" is the right command to issue to start
running the inferior.  If it's not the right command, I would be
happy to change it.

Okay to commit?

Michael C

2004-03-10  Michael Chastain  <mec.gnu@mindspring.com>

	* gdb.base/gdb1250.exp: Accommodate a pending breakpoint in
	a shared library.

Index: gdb1250.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/gdb1250.exp,v
retrieving revision 1.1
diff -c -3 -p -r1.1 gdb1250.exp
*** gdb1250.exp	15 Jul 2003 16:28:21 -0000	1.1
--- gdb1250.exp	11 Mar 2004 01:17:07 -0000
***************
*** 1,4 ****
! # Copyright 2003 Free Software Foundation, Inc.
  
  # This program is free software; you can redistribute it and/or modify
  # it under the terms of the GNU General Public License as published by
--- 1,4 ----
! # Copyright 2003, 2004 Free Software Foundation, Inc.
  
  # This program is free software; you can redistribute it and/or modify
  # it under the terms of the GNU General Public License as published by
*************** gdb_start
*** 42,51 ****
  gdb_reinitialize_dir $srcdir/$subdir
  gdb_load ${binfile}
  
! if ![runto abort] then {
!     perror "couldn't run to breakpoint"
!     continue
  }
  
  # See http://sources.redhat.com/gdb/bugs/1250
  #
--- 42,62 ----
  gdb_reinitialize_dir $srcdir/$subdir
  gdb_load ${binfile}
  
! # Run on 'abort'.  'abort' is special because gcc knows that it is a
! # no-return function, so gcc does a special optimization in every
! # caller of 'abort'.
! 
! set name "break abort"
! gdb_test_multiple "break abort" $name {
!     -re "Function \"abort\" not defined\.\r\nMake breakpoint pending on future shared library load\\? \\(y or \\\[n\\\]\\) $" {
! 	gdb_test "y" "" $name
!     }
!     -re "Breakpoint $decimal at .*\r\n$gdb_prompt $" {
! 	pass $name
!     }
  }
+ 
+ gdb_test "run" "Breakpoint $decimal.*abort.*" "run to abort"
  
  # See http://sources.redhat.com/gdb/bugs/1250
  #


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]