Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Robert Dewar <dewar@adacore.com>
To: Jim Blandy <jimb@red-bean.com>
Cc: Paul Koning <pkoning@equallogic.com>,
	 comar@adacore.com,   hilfingr@gnat.com,  gdb@sourceware.org
Subject: Re: : Re: [RFC] multiple breakpoints from FILE:LINE
Date: Mon, 16 Jan 2006 10:03:00 -0000	[thread overview]
Message-ID: <43CB6F51.4050506@adacore.com> (raw)
In-Reply-To: <8f2776cb0601152258n1210346ak95154a1dda2a22d1@mail.gmail.com>

Jim Blandy wrote:

>But the case being discussed in this thread is menus that appear in
>response to a location specified by a filename and line number.  It's
>not clear that the kind of legitimate ambiguity you're concerned about
>is present here.
>  
>
OK, understood.

>When a function has been inlined, it's odd for users to demand to be
>able to set breakpoints on one inlined instance but not another.  You
>can't set a breakpoint on a function conditional on it having been
>called from a certain place; why would users suddenly require that
>functionality just because the compiler decided to optimize the code
>in a certain way?
>  
>
I agree with this for the caser of inlined procedures, and I don't think 
it is
even necessary to have the possibility of setting breakpoints on an instance
by instance basis

>In-charge and not-in-charge constructors are a similar situation. 
>There's nothing in the semantics of the source language that ever
>suggests that there are two separate reifications of the single block
>of code the user wrote.  This differs from instantiations of generics,
>which (if I understand right) are things that the user actually did
>ask for.  The two constructor instances don't behave differently, as
>far as the source level in concerned.  Separating the two is purely an
>implementation strategy, and should be hidden from the user when
>reasonable.
>  
>
I agree

>In cases where the same code has been #included twice, I think there's
>more of a case that users might want to choose one or the other, since
>it is indeed explicit in the source code that this particular source
>line is going to contribute twice to the translation unit.  But even
>here, setting the breakpoint in both places would be a clear
>improvement over what we do now: choose one #inclusion randomly.
>  
>
Indeed, one random instance is for suer wrong

>(The last time we discussed this, Michael Chastain pointed out that
>you actually *do* want to choose a specific constructor instance when
>you're disassembling.  But we're talking about breakpoints here; the
>decision just needs to be made at the right place, so we can do one
>thing for 'break' and a different thing for 'disass'.)
>  
>
There is one more case, related to the #include case, which is generic 
templates in Ada, and here
too I think you want the possibility of setting a breakpoint in specific 
instances.




  reply	other threads:[~2006-01-16 10:03 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-15  1:51 Cyrille Comar
2006-01-15 16:33 ` Paul Koning
2006-01-15 16:45   ` Daniel Jacobowitz
2006-01-15 17:41     ` Robert Dewar
2006-01-15 22:23       ` Paul Koning
2006-01-16 13:43     ` Cyrille Comar
2006-01-16 13:47       ` Daniel Jacobowitz
2006-01-16 14:16         ` Cyrille Comar
2006-01-16 15:31       ` Paul Koning
2006-01-15 17:38   ` Robert Dewar
2006-01-16  6:58     ` Jim Blandy
2006-01-16 10:03       ` Robert Dewar [this message]
2006-01-16 10:04       ` Robert Dewar
2006-01-15 22:23 ` Paul Hilfinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=43CB6F51.4050506@adacore.com \
    --to=dewar@adacore.com \
    --cc=comar@adacore.com \
    --cc=gdb@sourceware.org \
    --cc=hilfingr@gnat.com \
    --cc=jimb@red-bean.com \
    --cc=pkoning@equallogic.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox