This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] Change to pre-expand symtabs
- From: Keith Seitz <keiths at redhat dot com>
- To: Tom Tromey <tromey at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Thu, 02 Sep 2010 09:51:33 -0700
- Subject: Re: [RFA] Change to pre-expand symtabs
- References: <4C4DD835.7060702@redhat.com> <m34oe9b150.fsf@fleche.redhat.com>
On 09/01/2010 02:32 PM, Tom Tromey wrote:
I'm afraid I am going to kick this one back to you.
I'll address this in a follow-up. I wanted to address the regression you
found:
This modified patch causes a regression in type-opaque.exp, I didn't research
why.
This is happening because match_transparent_type in symtab.c is assuming
GLOBAL_BLOCK, even though the desired block type is passed in.
With the simple patch below, the regression is gone.
May I commit this? [It causes no regressions on x86_64 linux.]
Keith
ChangeLog
2010-09-02 Keith Seitz <keiths@redhat.com>
* symtab.c (match_transparent_type): Use KIND for determining
the appropriate BLOCKVECTOR.
Index: symtab.c
===================================================================
RCS file: /cvs/src/src/gdb/symtab.c,v
retrieving revision 1.252
diff -u -p -r1.252 symtab.c
--- symtab.c 1 Sep 2010 21:50:26 -0000 1.252
+++ symtab.c 2 Sep 2010 16:36:58 -0000
@@ -1671,7 +1671,7 @@ match_transparent_type (struct symtab *s
struct symbol *sym;
bv = BLOCKVECTOR (symtab);
- block = BLOCKVECTOR_BLOCK (bv, GLOBAL_BLOCK);
+ block = BLOCKVECTOR_BLOCK (bv, kind);
sym = lookup_block_symbol (block, name, STRUCT_DOMAIN);
if (sym && !TYPE_IS_OPAQUE (SYMBOL_TYPE (sym)))
return sym;