On Fri, Jun 8, 2012 at 2:22 PM, Cary Coutant <ccout...@google.com> wrote: >> Hmm, I thought the convention for this sort of flag was to start with -f, >> that -g flags were only for selecting the type and level of debug info. But >> I see that there are other debug dialect switches that use -g, so I guess >> this is OK. > > I kind of prefer -g, but I did notice that it's -fdebug-types-section, > so I could go with -f[no-]pubnames (or, as Jakub suggests, > -f[no-]debug-pubnames-section). On the other hand, there's > -g[no-]record-gcc-switches. What would you prefer? > > If we change it, should we also change (in a later patch) > -gsplit-dwarf (orig. -gfission) to -fsplit-dwarf? > >>> + if ((TREE_PUBLIC (decl) && !is_class_die (die->die_parent)) >> >> Why not include public class members? Is the theory that you'll need to >> read the type DIE anyway to do anything with the member, so you might as >> well read it to look up the member in the first place? There should be a >> comment about this. > > Yes, that's the theory. We're just trying to do the same thing that > GDB does when it builds .gdb_index. > >>> + VEC_safe_push (pubname_entry, gc, pubtype_table, &e); >> >> Why add enumerators to pubtypes rather than pubnames? They seem more like >> variables than types to me. > > That looks like a typo. It hasn't caused us any trouble because the > linker just throws all the names into the same table in .gdb_index, > but yes, I think it should go in pubnames_table. > > -cary
OK, I've updated the patch with all these additional comments. Just waiting on the decision between -f and -g. I'll repost and then commit it when that is settled--hopefully soon. Next up, the big fission patch! Sterling