diff options
Diffstat (limited to 'gdb/cli/cli-decode.c')
-rw-r--r-- | gdb/cli/cli-decode.c | 59 |
1 files changed, 35 insertions, 24 deletions
diff --git a/gdb/cli/cli-decode.c b/gdb/cli/cli-decode.c index fb755a6..d6f54a6 100644 --- a/gdb/cli/cli-decode.c +++ b/gdb/cli/cli-decode.c @@ -1,6 +1,6 @@ /* Handle lists of commands, their decoding and documentation, for GDB. - Copyright 1986, 1989, 1990, 1991, 1998, 2000, 2001, 2002 Free + Copyright 1986, 1989, 1990, 1991, 1998, 2000, 2001, 2002, 2004 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -320,16 +320,19 @@ add_set_or_show_cmd (char *name, CLASS is as in add_cmd. VAR_TYPE is the kind of thing we are setting. VAR is address of the variable being controlled by this command. SET_FUNC and SHOW_FUNC are the callback functions (if - non-NULL). SET_DOC and SHOW_DOC are the documentation strings. - SET_RESULT and SHOW_RESULT, if not NULL, are set to the resulting - command structures. */ + non-NULL). SET_DOC, SHOW_DOC and HELP_DOC are the documentation + strings. PRINT the format string to print the value. SET_RESULT + and SHOW_RESULT, if not NULL, are set to the resulting command + structures. */ void add_setshow_cmd_full (char *name, enum command_class class, var_types var_type, void *var, - char *set_doc, char *show_doc, - cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, + cmd_sfunc_ftype *set_func, + cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list, struct cmd_list_element **set_result, @@ -337,12 +340,14 @@ add_setshow_cmd_full (char *name, { struct cmd_list_element *set; struct cmd_list_element *show; + char *full_set_doc = xstrprintf ("%s\n%s", set_doc, help_doc); + char *full_show_doc = xstrprintf ("%s\n%s", show_doc, help_doc); set = add_set_or_show_cmd (name, set_cmd, class, var_type, var, - set_doc, set_list); + full_set_doc, set_list); if (set_func != NULL) set_cmd_sfunc (set, set_func); show = add_set_or_show_cmd (name, show_cmd, class, var_type, var, - show_doc, show_list); + full_show_doc, show_list); if (show_func != NULL) set_cmd_sfunc (show, show_func); @@ -362,12 +367,14 @@ void add_setshow_cmd (char *name, enum command_class class, var_types var_type, void *var, - char *set_doc, char *show_doc, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list) { - add_setshow_cmd_full (name, class, var_type, var, set_doc, show_doc, + add_setshow_cmd_full (name, class, var_type, var, + set_doc, show_doc, help_doc, print, set_func, show_func, set_list, show_list, NULL, NULL); } @@ -414,7 +421,8 @@ void add_setshow_auto_boolean_cmd (char *name, enum command_class class, enum auto_boolean *var, - char *set_doc, char *show_doc, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, @@ -423,7 +431,8 @@ add_setshow_auto_boolean_cmd (char *name, static const char *auto_boolean_enums[] = { "on", "off", "auto", NULL }; struct cmd_list_element *c; add_setshow_cmd_full (name, class, var_auto_boolean, var, - set_doc, show_doc, set_func, show_func, + set_doc, show_doc, help_doc, print, + set_func, show_func, set_list, show_list, &c, NULL); c->enums = auto_boolean_enums; @@ -434,9 +443,9 @@ add_setshow_auto_boolean_cmd (char *name, add_cmd. VAR is address of the variable which will contain the value. SET_DOC and SHOW_DOC are the documentation strings. */ void -add_setshow_boolean_cmd (char *name, - enum command_class class, - int *var, char *set_doc, char *show_doc, +add_setshow_boolean_cmd (char *name, enum command_class class, int *var, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, @@ -445,7 +454,7 @@ add_setshow_boolean_cmd (char *name, static const char *boolean_enums[] = { "on", "off", NULL }; struct cmd_list_element *c; add_setshow_cmd_full (name, class, var_boolean, var, - set_doc, show_doc, + set_doc, show_doc, help_doc, print, set_func, show_func, set_list, show_list, &c, NULL); @@ -457,16 +466,17 @@ add_setshow_boolean_cmd (char *name, add_cmd. VAR is address of the variable which will contain the value. SET_DOC and SHOW_DOC are the documentation strings. */ void -add_setshow_uinteger_cmd (char *name, - enum command_class class, - unsigned int *var, char *set_doc, char *show_doc, +add_setshow_uinteger_cmd (char *name, enum command_class class, + unsigned int *var, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list) { add_setshow_cmd_full (name, class, var_uinteger, var, - set_doc, show_doc, + set_doc, show_doc, help_doc, print, set_func, show_func, set_list, show_list, NULL, NULL); @@ -477,16 +487,17 @@ add_setshow_uinteger_cmd (char *name, add_cmd. VAR is address of the variable which will contain the value. SET_DOC and SHOW_DOC are the documentation strings. */ void -add_setshow_zinteger_cmd (char *name, - enum command_class class, - int *var, char *set_doc, char *show_doc, +add_setshow_zinteger_cmd (char *name, enum command_class class, + int *var, + const char *set_doc, const char *show_doc, + const char *help_doc, const char *print, cmd_sfunc_ftype *set_func, cmd_sfunc_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list) { add_setshow_cmd_full (name, class, var_zinteger, var, - set_doc, show_doc, + set_doc, show_doc, help_doc, print, set_func, show_func, set_list, show_list, NULL, NULL); |