[Bug c++/11526] New: GDB thinks every type is a a possibility for tab completion on template arguments

k04jg02 at gmail dot com sourceware-bugzilla@sourceware.org
Wed Apr 21 15:15:00 GMT 2010


When debugging with GDB, I had a templated member function on an object called
'segment'. I wanted to run a specific instantiation of this function, so I wrote:

print segment.dereference<

And then pressed TAB. GDB promptly responded:

Display all 15226 possibilities? (y or n)

I believe this is the total number of types present in the binary. For most
programs this list is huge, which makes it impractical for TAB completion.
However, the vast majority of these types won't work because instantiations of
this template were only made for a few types when g++ compiled the app, because
only a few specific instantiations exist in the source.

It would be nice if GDB only listed types for which there are actually
instantiations of the template in the binary, both to make the list shorter and
because these are the only ones that will succeed. Typing the types manually
isn't even a great workaround because often times template parameters are hugely
nested types several namespaces deep and often with their own template parameters.

-- 
           Summary: GDB thinks every type is a a possibility for tab
                    completion on template arguments
           Product: gdb
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at sourceware dot org
        ReportedBy: k04jg02 at gmail dot com
                CC: gdb-prs at sourceware dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=11526

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the Gdb-prs mailing list