From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7270 invoked by alias); 13 May 2014 23:08:19 -0000 Mailing-List: contact gdb-prs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-prs-owner@sourceware.org Received: (qmail 7240 invoked by uid 48); 13 May 2014 23:08:18 -0000 From: "dje at google dot com" To: gdb-prs@sourceware.org Subject: [Bug symtab/16942] New: lookup in static block finds wrong type? Date: Tue, 13 May 2014 23:08:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gdb X-Bugzilla-Component: symtab X-Bugzilla-Version: HEAD X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dje at google dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-q2/txt/msg00228.txt.bz2 https://sourceware.org/bugzilla/show_bug.cgi?id=16942 Bug ID: 16942 Summary: lookup in static block finds wrong type? Product: gdb Version: HEAD Status: NEW Severity: normal Priority: P2 Component: symtab Assignee: unassigned at sourceware dot org Reporter: dje at google dot com Filing this so I don't drop root-causing this. This isn't a complete example, but it's sufficient to recreate one. (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("main")[1][0].symtab.static_block()).fields()[0].name x (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("baz")[1][0].symtab.static_block()).fields()[0].name z (gdb) start Temporary breakpoint 1 at 0x400538: file multiple_decl1.c, line 8. Starting program: ./multiple_decl Temporary breakpoint 1, main () at multiple_decl1.c:8 8 bar.x = 1; (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("main")[1][0].symtab.static_block()).fields()[0].name z <<<<<<<<<<<<<<<<<<<<<<<<<< (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("baz")[1][0].symtab.static_block()).fields()[0].name z (gdb) n 9 baz(); (gdb) step baz () at multiple_decl2.c:9 9 a.z = 'c'; (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("main")[1][0].symtab.static_block()).fields()[0].name z <<<<<<<<<<<<<<<<<<<<<<<<<<< (gdb) py print gdb.lookup_type("struct foo", gdb.decode_line("baz")[1][0].symtab.static_block()).fields()[0].name z (gdb) list baz 2 3 struct foo { 4 char z; 5 }; 6 void baz() 7 { (gdb) list main 1 #include "multiple_decl2.h" 2 struct foo { 3 int x; 4 }; 5 int main() 6 { -- You are receiving this mail because: You are on the CC list for the bug.