public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v3 0/2] Improve handling of using directives
@ 2022-11-22 11:33 Bruno Larsen
  2022-11-22 11:33 ` [PATCH v3 1/2] gdb/c++: validate 'using' directives based on the current line Bruno Larsen
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Bruno Larsen @ 2022-11-22 11:33 UTC (permalink / raw)
  To: gdb-patches; +Cc: Bruno Larsen

This series tries to fix two of the main issues I saw when trying to get
gdb.cp/nsusing.exp working with clang. The first issue was that GDB
wouldn't care about when the 'using' directive happened in the code,
even if we were stopped before it, it was considered valid. The second
was that GDB would find the first reasonable variable in the imported
declarations and leave early, not caring about whether that variable was
ambiguous or not. Each of my patches fixes one of those issues.

Changelog for v3:
 * changed map key to use std::string, so we get an ordered output.
 * Improved documentation on some spots
 * Fix bug where gdb could return a partial list of the ambiguous symbols

Changelog for v2:
 * factored out some code to avoid unnecessary repetition.
 * made it so ambiguous variables are explicitly reported
 * fixed formatting issues.

Bruno Larsen (2):
  gdb/c++: validate 'using' directives based on the current line
  gdb/c++: Detect ambiguous variables in imported namespaces

 gdb/cp-namespace.c               | 99 ++++++++++++++++++++++++--------
 gdb/dwarf2/read.c                | 30 +++++++++-
 gdb/namespace.c                  | 25 ++++++++
 gdb/namespace.h                  | 16 +++++-
 gdb/testsuite/gdb.cp/nsusing.cc  |  3 +-
 gdb/testsuite/gdb.cp/nsusing.exp | 25 +++++++-
 6 files changed, 167 insertions(+), 31 deletions(-)

-- 
2.38.1


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

end of thread, other threads:[~2022-12-20 21:11 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-22 11:33 [PATCH v3 0/2] Improve handling of using directives Bruno Larsen
2022-11-22 11:33 ` [PATCH v3 1/2] gdb/c++: validate 'using' directives based on the current line Bruno Larsen
     [not found]   ` <CAJVr-EMEbyP4pgDk=U50p5nWrybJgFbdZ0iLCp4W6WbWJKGc9A@mail.gmail.com>
2022-12-15 13:26     ` Fwd: " Alexandra Petlanova Hajkova
2022-12-15 14:50       ` Bruno Larsen
2022-12-20 21:06   ` Tom Tromey
2022-11-22 11:33 ` [PATCH v3 2/2] gdb/c++: Detect ambiguous variables in imported namespaces Bruno Larsen
2022-12-20 21:10   ` Tom Tromey
2022-12-07 13:53 ` [PATCH v3 0/2] Improve handling of using directives Bruno Larsen
2022-12-15 10:17   ` [PINGv2][PATCH " Bruno Larsen

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).