public inbox for gdb-prs@sourceware.org help / color / mirror / Atom feed
From: "simark at simark dot ca" <sourceware-bugzilla@sourceware.org> To: gdb-prs@sourceware.org Subject: [Bug gdb/28480] pretty printing getting confused Date: Thu, 04 Nov 2021 17:56:57 +0000 [thread overview] Message-ID: <bug-28480-4717-8cK1uma46y@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-28480-4717@http.sourceware.org/bugzilla/> https://sourceware.org/bugzilla/show_bug.cgi?id=28480 --- Comment #14 from Simon Marchi <simark at simark dot ca> --- (In reply to Jonathan Wakely from comment #12) > Aha, the std::tuple case is more like this: > > struct X > { > int i = 0x1; > }; > > struct Y > { > struct S { }; > [[no_unique_address]] S i; > }; > > struct XX : X { }; > > struct Z : Y, XX { }; > > int main() > { > Z z; > return 0; > } I think you can get rid of XX (make Z directly inherit from X) and it still reproduces. > > Here z.i is ambiguous, but GDB doesn't diagnose it. > > And GDB 10 returns z.X::i but GDB 11 returns z.Y::i If I try to use z.i in the program, it doesn't compile: test.cpp: In function ‘int main()’: test.cpp:17:12: error: request for member ‘i’ is ambiguous 17 | return z.i; | ^ test.cpp:3:7: note: candidates are: ‘int X::i’ 3 | int i = 0x1; | ^ test.cpp:9:27: note: ‘Y::S Y::i’ 9 | [[no_unique_address]] S i; | ^ So I agree, it makes sense for GDB to not accept the expression. It looks like the intent is to reject and (and print the "request is ambiguous" message), but that the no_unique_address tag confuses GDB. -- You are receiving this mail because: You are on the CC list for the bug.
next prev parent reply other threads:[~2021-11-04 17:56 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-10-20 22:43 [Bug gdb/28480] New: " jwakely.gcc at gmail dot com 2021-10-21 0:44 ` [Bug gdb/28480] " jwakely.gcc at gmail dot com 2021-10-21 0:49 ` jwakely.gcc at gmail dot com 2021-10-21 0:56 ` jwakely.gcc at gmail dot com 2021-10-21 3:23 ` simark at simark dot ca 2021-10-21 8:44 ` jwakely.gcc at gmail dot com 2021-10-26 19:14 ` blarsen at redhat dot com 2021-11-04 16:01 ` blarsen at redhat dot com 2021-11-04 16:52 ` jwakely.gcc at gmail dot com 2021-11-04 17:06 ` jwakely.gcc at gmail dot com 2021-11-04 17:09 ` jwakely.gcc at gmail dot com 2021-11-04 17:36 ` jwakely.gcc at gmail dot com 2021-11-04 17:42 ` jwakely.gcc at gmail dot com 2021-11-04 17:53 ` jwakely.gcc at gmail dot com 2021-11-04 17:56 ` simark at simark dot ca [this message] 2021-11-04 17:59 ` simark at simark dot ca 2021-11-04 18:07 ` blarsen at redhat dot com 2021-11-04 18:45 ` pedro at palves dot net 2021-11-04 19:40 ` blarsen at redhat dot com 2021-11-05 13:53 ` blarsen at redhat dot com 2021-11-05 14:29 ` [Bug c++/28480] Incorrect field ambiguity detection due to [[no_unique_address]] simark at simark dot ca 2021-11-25 12:56 ` cvs-commit at gcc dot gnu.org 2021-11-25 15:25 ` blarsen at redhat dot com 2021-12-11 7:49 ` cvs-commit at gcc dot gnu.org
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=bug-28480-4717-8cK1uma46y@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=gdb-prs@sourceware.org \ /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: linkBe 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; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).