Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* Re: gdb 5.2 removes the conditional breakpoints
@ 2002-04-17 23:40 Michael Veksler
  2002-04-18  3:11 ` Eli Zaretskii
  0 siblings, 1 reply; 16+ messages in thread
From: Michael Veksler @ 2002-04-17 23:40 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: H . J . Lu, gdb


This is a real problem. Your argument that "5,2 has been around for ~4
years" does not hold water, how many people have been using 5.2 ? The "many
eyeballs" effect takes place only when you "release early, release often"
and 4 years cycle is anything but "often".

<rant>
Now that you have a branch, people will start using it. Bugs will be
spotted, some of them will be critical (SEGV), some will be very bad (an
important gdb state gets reset upon restart) and others will be simply
annoying (print syntax will not work the way it is supposed to). That's
life. If you want to make gdb better, you'd have to do things that the gcc
team does now:
1. Shorten development cycle (gcc's goal is 6 months, but ,
    they'll probably need 8)/
2. Fix regressions of a branch even if they have "been around for 4 years".
3. Fix bugs even if they are not yours (gcc-2.95.4 had a work-around for
    a glibc bug).

I started 5.2 evaluation only a month ago. The first bug I noticed was that
it crashed with SEGV every time (which I reported, and it got fixed). The
second bug (few hours later), was this conditional breakpoint problem. This
problem is very annoying in C++. Every condition with virtual functions
gets removed (at least those that I tried).

I did not report it, because I am only toying with migrating my code to
Linux and doing it in my spare time. My product is libraries, so it is my
responsibility to make sure my users/customers can debug the code. So if
they are about to run it on Linux, I have to make sure they can use gdb
comfortably. If important fixes (like this one) do not get applied, I'll
have to maintain a fork of gdb. I do not get paid to maintain Free SW (or
OSS), so I hate this option (my manager will probably hate this even more).
My users will hate this also (who wants to use forked code?)
</rant>

Please apply this patch to 5.2 branch (or at least say what's wrong with
the patch, so that it can be perfected, and applied).


   Michael


Andrew Cagney <ac131313@cygnus.com> on 18-04-2002 06:21:02

Please respond to Andrew Cagney <ac131313@cygnus.com>

To:    "H . J . Lu" <hjl@lucon.org>
cc:    Michael Veksler/Haifa/IBM@IBMIL, gdb@sources.redhat.com
Subject:    Re: gdb 5.2 removes the conditional breakpoints



> On Wed, Apr 17, 2002 at 08:34:54PM -0400, Andrew Cagney wrote:
>
>> >
>> > May I check it into gdb 5.2?
>
>>
>> No.  5,2 is effectivly frozen.  I've the README file to fix, that is it.
>>
>
>
> It works with gdb 4.17 and someone broke it in 5.x. How long does it
> take to fix it?

(looks under table, nope, no fire ...)

H.J. This ``very bad regression from gdb 4,17'' that must be in 5,2 has
been around for ~4 years now without anyone even thinking to report it!
Perhaphs it isn't so bad after all :-)

BTW, a real .exp testcase?

Andrew





^ permalink raw reply	[flat|nested] 16+ messages in thread
* Re: gdb 5.2 removes the conditional breakpoints
@ 2002-04-10  0:52 Michael Veksler
  2002-04-17 16:57 ` H . J . Lu
  0 siblings, 1 reply; 16+ messages in thread
From: Michael Veksler @ 2002-04-10  0:52 UTC (permalink / raw)
  To: gdb; +Cc: veksler, H . J . Lu, Andrew Cagney

/References/: <20020322095020.A12445@lucon.org 
<http://sources.redhat.com/ml/gdb/2002-03/msg00196.html> > 
<3C9B76F5.6050809@cygnus.com 
<http://sources.redhat.com/ml/gdb/2002-03/msg00198.html> >


On Fri, Mar 22, 2002 at 01:24:53PM -0500, Andrew Cagney wrote:
> > When I do
> > 
> > (gdb) b 100
> > (gdb) cond 1 i == 3
> > (gdb) r
> > (gdb) r
> > 
> > gdb 5.2 will remove the conditional breakpoints on Linux/x86 after I
> > restart the debug session. Am I the only one who sees it?
> 
> It would be very helpful if you could illustrate this problem by 
> submitting a real testcase.  That way people can run it and check 
> before/after effects on various platforms and GDB releases.
> 

Here are the instructions for reproducing this annoying problem:

    // Debugged source:
    typedef int operation(int val);

    int f(operation * op, int value)
    {
        return op(value);
    }

    int nop(int val)
    {
       return val;
    }

    int main()
    {
        return f(nop, 5);
    }
    // End source

Compile it on Linux using gcc 3.0.4 or  redhat's 2.96 (did not test it 
on other versions).
(gdb) b main
(gdb) r
Breakpoint 1, main () at t.c:15
15         return f(nop, 5);
(gdb) s
f (op=0x8048448 <nop>, value=5) at t.c:5
5          return op(value);
(gdb) b
Breakpoint 2 at 0x8048432: file t.c, line 5.
(gdb) cond 2 op(value) == value
(gdb) r
The program being debugged has been started already.
Start it from the beginning? (y or n) y

Starting program: .....
Breakpoint 1, main () at t.c:15
15         return f(nop, 5);
(gdb) info b
Num Type           Disp Enb Address    What
1   breakpoint     keep y   0x0804845a in main at t.c:15
        breakpoint already hit 1 time
(gdb) q

----- Breakpoint 2 lost !!! ----


------------------------------------------------------------------------



^ permalink raw reply	[flat|nested] 16+ messages in thread
* gdb 5.2 removes the conditional breakpoints
@ 2002-03-22  9:50 H . J . Lu
  2002-03-22 10:24 ` Andrew Cagney
  2002-03-22 10:27 ` Daniel Jacobowitz
  0 siblings, 2 replies; 16+ messages in thread
From: H . J . Lu @ 2002-03-22  9:50 UTC (permalink / raw)
  To: GDB

When I do

(gdb) b 100
(gdb) cond 1 i == 3
(gdb) r
(gdb) r

gdb 5.2 will remove the conditional breakpoints on Linux/x86 after I
restart the debug session. Am I the only one who sees it?


H.J.


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

end of thread, other threads:[~2002-04-18 17:41 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-17 23:40 gdb 5.2 removes the conditional breakpoints Michael Veksler
2002-04-18  3:11 ` Eli Zaretskii
2002-04-18  9:31   ` H . J . Lu
2002-04-18 10:22     ` Daniel Jacobowitz
2002-04-18 10:34       ` H . J . Lu
2002-04-18 10:41         ` Daniel Jacobowitz
2002-04-18  9:42   ` H . J . Lu
  -- strict thread matches above, loose matches on Subject: below --
2002-04-10  0:52 Michael Veksler
2002-04-17 16:57 ` H . J . Lu
2002-04-17 17:34   ` Andrew Cagney
2002-04-17 17:48     ` H . J . Lu
2002-04-17 20:20       ` Andrew Cagney
2002-03-22  9:50 H . J . Lu
2002-03-22 10:24 ` Andrew Cagney
2002-03-22 10:45   ` H . J . Lu
2002-03-22 10:27 ` Daniel Jacobowitz

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