public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug debug/109411] New: missing debug information with statement frontiers
@ 2023-04-04 16:11 mpolacek at gcc dot gnu.org
  2023-04-04 16:13 ` [Bug debug/109411] " mpolacek at gcc dot gnu.org
  2023-10-27  9:47 ` aoliva at gcc dot gnu.org
  0 siblings, 2 replies; 3+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2023-04-04 16:11 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109411

            Bug ID: 109411
           Summary: missing debug information with statement frontiers
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: debug
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mpolacek at gcc dot gnu.org
  Target Milestone: ---

$ cat main.cc
#include "test.h"

void invokeInline (Message & msg, int param)
{
  someInlineFunction (msg, param);
}

int main ()
{
  Message msg;
  invokeInline (msg, 42);
}

$ cat test.h 
struct Message {
  int member{35};
};

template<typename T>
void someInlineFunction (T & msg, int value)
{
   msg.member += value;
}

$ g++ -Og -g main.cc
$ gdb --nh --batch -ex 'break test.h:9' -ex run ./a.out
No line 9 in file "test.h".
[...]

but:

$ g++ -Og -g main.cc -gno-statement-frontiers
$ gdb --nh --batch -ex 'break test.h:9' -ex run ./a.out
Breakpoint 1 at 0x40113b: file /home/mpolacek/x/trunk/gcc/r/test.h, line 9.
[...]

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

* [Bug debug/109411] missing debug information with statement frontiers
  2023-04-04 16:11 [Bug debug/109411] New: missing debug information with statement frontiers mpolacek at gcc dot gnu.org
@ 2023-04-04 16:13 ` mpolacek at gcc dot gnu.org
  2023-10-27  9:47 ` aoliva at gcc dot gnu.org
  1 sibling, 0 replies; 3+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2023-04-04 16:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109411

Marek Polacek <mpolacek at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |aoliva at gcc dot gnu.org

--- Comment #1 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Started with r255569 -- Alex, any comments?

I'm not sure it is a genuine gcc bug but saying "No line 9 in file "test.h""
seems confusing at least.

Possibly related to bug 92468.

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

* [Bug debug/109411] missing debug information with statement frontiers
  2023-04-04 16:11 [Bug debug/109411] New: missing debug information with statement frontiers mpolacek at gcc dot gnu.org
  2023-04-04 16:13 ` [Bug debug/109411] " mpolacek at gcc dot gnu.org
@ 2023-10-27  9:47 ` aoliva at gcc dot gnu.org
  1 sibling, 0 replies; 3+ messages in thread
From: aoliva at gcc dot gnu.org @ 2023-10-27  9:47 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109411

--- Comment #2 from Alexandre Oliva <aoliva at gcc dot gnu.org> ---
AFAICT there are mentions to test.h line numbers both with and without
-gstatement-frontiers, and the mentions are the same.  The problem is two-fold:

- there aren't any stmt markers for the lines in the template instantiation
from test.h.  absent stmt markers, is_stmt remains at zero throughout the
function, except for its entry on line 6

- GDB appears to disregard !is_stmt locs entirely when setting breakpoints

I suppose getting markers for the instantiation would fix the problem, but I
don't have any insight into why they're not generated.

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

end of thread, other threads:[~2023-10-27  9:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-04 16:11 [Bug debug/109411] New: missing debug information with statement frontiers mpolacek at gcc dot gnu.org
2023-04-04 16:13 ` [Bug debug/109411] " mpolacek at gcc dot gnu.org
2023-10-27  9:47 ` aoliva at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).