From: Vladimir Prus Date: Tue, 30 Jun 2009 09:24:47 +0000 (+0000) Subject: * varobj.c (varobj_get_type): Use type_to_string. X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=1a4300e94d4ed5537636e25dbaf809c834395dbd;p=deliverable%2Fbinutils-gdb.git * varobj.c (varobj_get_type): Use type_to_string. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 934248aa9e..b752188dd0 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2009-06-30 Vladimir Prus + + * varobj.c (varobj_get_type): Use type_to_string. + 2009-06-29 Pedro Alves * infrun.c (handle_inferior_event): Context switch to the new diff --git a/gdb/varobj.c b/gdb/varobj.c index a22607a806..661a74bbeb 100644 --- a/gdb/varobj.c +++ b/gdb/varobj.c @@ -34,6 +34,7 @@ #include "vec.h" #include "gdbthread.h" #include "inferior.h" +#include "typeprint.h" #if HAVE_PYTHON #include "python/python.h" @@ -1030,29 +1031,13 @@ varobj_add_child (struct varobj *var, const char *name, struct value *value) char * varobj_get_type (struct varobj *var) { - struct value *val; - struct cleanup *old_chain; - struct ui_file *stb; - char *thetype; - long length; - /* For the "fake" variables, do not return a type. (It's type is NULL, too.) Do not return a type for invalid variables as well. */ if (CPLUS_FAKE_CHILD (var) || !var->root->is_valid) return NULL; - stb = mem_fileopen (); - old_chain = make_cleanup_ui_file_delete (stb); - - /* To print the type, we simply create a zero ``struct value *'' and - cast it to our type. We then typeprint this variable. */ - val = value_zero (var->type, not_lval); - type_print (value_type (val), "", stb, -1); - - thetype = ui_file_xstrdup (stb, &length); - do_cleanups (old_chain); - return thetype; + return type_to_string (var->type); } /* Obtain the type of an object variable. */