Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* std::string and MI
@ 2008-11-27 12:39 André Pönitz
  2008-12-02 17:37 ` Tom Tromey
  2008-12-03 17:27 ` Daniel Jacobowitz
  0 siblings, 2 replies; 3+ messages in thread
From: André Pönitz @ 2008-11-27 12:39 UTC (permalink / raw)
  To: gdb



Hi all.

For the following code

    #include <string>
    
    struct string {};
    
    namespace foo { struct string {}; }
    
    
    int main()
    {
        std::string s;
        foo::string f;
        string t;
    }

I get after issuing a  "-stack-list-locals 2" the response

   ^done,locals=[{name="s",type="string"},{name="f",type="foo::string"},
    {name="t",type="string"}]

Similarily,  "-var-create s * s" followed by "-var-info-type s" produces  

   ^done,type="string"

In both cases the 'std::' namespace is missing from the type.

As the "namespace foo" example above shows, this can't be the general
problem with namespaces, as "foo::string" is reported as I expected.

Does anybody know how to tweak gdb's settings so that it produces the
std:: namespace, too?  [Getting back the "real"  "std::basic_string<char...>"
would be fine for me as well]

Incidentally: Would it be possible to extend the MI commands that output
types to also produce the mangled types? (This could be restricted to the
cases where these actually differs from the unmangled ones, but I really 
don't mind duplicated output)

Regards,
Andre'


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-12-03 17:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-27 12:39 std::string and MI André Pönitz
2008-12-02 17:37 ` Tom Tromey
2008-12-03 17:27 ` Daniel Jacobowitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox