Bug 128620

Summary: deferred breakpoints don't allow deferring on member functions
Product: [Fedora] Fedora Reporter: Caolan McNamara <caolanm>
Component: gdbAssignee: Elena Zannoni <ezannoni>
Status: CLOSED ERRATA QA Contact:
Severity: low Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-10-13 08:17:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
example test tarball none

Description Caolan McNamara 2004-07-27 09:46:56 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7) Gecko/20040720

Description of problem:
Deferred breakpoints apparently don't allow deferring on an unseen c++
member function, but does allow breaking on an unseen line i.e. in the
test case attached c++test2cmdsA works, while c++test2cmdsB doesn't


Version-Release number of selected component (if applicable):
gdb-6.1post-1.20040607.8

How reproducible:
Always

Steps to Reproduce:
1. take attachment
2 [details]. make gdbtest2c++
    

Actual Results:  No source file named c++test2dl.cxx.
Breakpoint 1 (c++test2dl.cxx:17) pending.
Breakpoint 2 at 0x40018d67: file c++test2dl.cxx, line 17.
Pending breakpoint "c++test2dl.cxx:17" resolved
ctor

Breakpoint 2, test::foo (this=0x804a050) at c++test2dl.cxx:17
17              return 0;

Program exited normally.
gdb -x c++test2cmdsB
GNU gdb 6.1.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i686-pc-linux-gnu".
Using host libthread_db library "/lib/libthread_db.so.1".
Can't find member of namespace, class, struct, or union named "test::foo"
Hint: try 'test::foo<TAB> or 'test::foo<ESC-?>
(Note leading single quote.)
ctor

Program exited normally.
c++test2cmdsB:6: Error in sourced command file:
The program is not being run.


Expected Results:  No source file named c++test2dl.cxx.
Breakpoint 1 (c++test2dl.cxx:17) pending.
Breakpoint 2 at 0x40018d67: file c++test2dl.cxx, line 17.
Pending breakpoint "c++test2dl.cxx:17" resolved
ctor

Breakpoint 2, test::foo (this=0x804a050) at c++test2dl.cxx:17
17              return 0;

Program exited normally.
gdb -x c++test2cmdsB
GNU gdb 6.1.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i686-pc-linux-gnu".
Using host libthread_db library "/lib/libthread_db.so.1".
Breakpoint 1 (test::foo) pending.
Breakpoint 2 at 0x40018d67: file c++test2dl.cxx, line 17.
Pending breakpoint "test::foo" resolved
ctor
ctor

Program exited normally.


Additional info:

Its not so serious, can be workaround by simply using line numbers.

Comment 1 Caolan McNamara 2004-07-27 09:48:26 UTC
Created attachment 102220 [details]
example test tarball

Comment 2 Caolan McNamara 2004-10-13 08:17:41 UTC
works in gdb-6.1post-1.20040607.35

Comment 3 John Flanagan 2004-12-21 19:37:08 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2004-561.html