aboutsummaryrefslogtreecommitdiff
path: root/gdb/varobj.h
diff options
context:
space:
mode:
authorDenis Pilat <denis.pilat@st.com>2007-02-13 08:15:49 +0000
committerDenis Pilat <denis.pilat@st.com>2007-02-13 08:15:49 +0000
commit8756216bc74d2a014779aaebf3cbb6f220cc4583 (patch)
tree3d8f139c33a1ab5110aac49188048e58f9963c00 /gdb/varobj.h
parentb1e374737bca6da4311e2be8b0cc9133599dfad1 (diff)
downloadgdb-8756216bc74d2a014779aaebf3cbb6f220cc4583.zip
gdb-8756216bc74d2a014779aaebf3cbb6f220cc4583.tar.gz
gdb-8756216bc74d2a014779aaebf3cbb6f220cc4583.tar.bz2
2007-02-13 Denis Pilat <denis.pilat@st.com>
* varobj.h (enum varobj_update_error): New enum. * varobj.c (struct varobj_root): Add is_valid member. (varobj_get_type): Check for invalid varobj. (varobj_get_attributes): Likewise. (variable_editable):Likewise. (varobj_update): Likewise. Use varobj_update_error. (new_root_variable): Set root varobj as valid by default. (varobj_invalidate): New function. * symfile.c (clear_symtab_users): Use varobj_invalidate. * mi/mi-cmd-var.c (varobj_update_one): Change return type to void. Use varobj_update_error.
Diffstat (limited to 'gdb/varobj.h')
-rw-r--r--gdb/varobj.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/gdb/varobj.h b/gdb/varobj.h
index e95321d..eb45620 100644
--- a/gdb/varobj.h
+++ b/gdb/varobj.h
@@ -38,7 +38,16 @@ enum varobj_type
USE_CURRENT_FRAME, /* Use the current frame */
USE_SELECTED_FRAME /* Always reevaluate in selected frame */
};
-
+
+/* Error return values for varobj_update function. */
+enum varobj_update_error
+ {
+ NOT_IN_SCOPE = -1, /* varobj not in scope, can not be updated. */
+ TYPE_CHANGED = -2, /* varobj type has changed. */
+ INVALID = -3, /* varobj is not valid anymore. */
+ WRONG_PARAM = -4 /* function is called with wrong arguments. */
+ };
+
/* String representations of gdb's format codes (defined in varobj.c) */
extern char *varobj_format_string[];
@@ -99,4 +108,6 @@ extern int varobj_list (struct varobj ***rootlist);
extern int varobj_update (struct varobj **varp, struct varobj ***changelist);
+extern void varobj_invalidate (void);
+
#endif /* VAROBJ_H */