Index: gdb/command.h |
diff --git a/gdb/command.h b/gdb/command.h |
index 3064ce29a8125f8893126f271a8e9cbd7a8b18ae..81edc4329819827b43f55d83472aab3ee49e3061 100644 |
--- a/gdb/command.h |
+++ b/gdb/command.h |
@@ -1,7 +1,6 @@ |
/* Header file for command creation. |
- Copyright (C) 1986, 1989-1995, 1999-2000, 2002, 2004, 2007-2012 Free |
- Software Foundation, Inc. |
+ Copyright (C) 1986-2013 Free Software Foundation, Inc. |
This program is free software; you can redistribute it and/or modify |
it under the terms of the GNU General Public License as published by |
@@ -77,7 +76,8 @@ typedef enum var_types |
/* Like var_uinteger but signed. *VAR is an int. The user can |
type 0 to mean "unlimited", which is stored in *VAR as |
- INT_MAX. */ |
+ INT_MAX. The only remaining use of it is the Python API. |
+ Don't use it elsewhere. */ |
var_integer, |
/* String which the user enters with escapes (e.g. the user types |
@@ -93,12 +93,16 @@ typedef enum var_types |
/* String which stores a filename. (*VAR) is a malloc'd |
string. */ |
var_filename, |
- /* ZeroableInteger. *VAR is an int. Like Unsigned Integer except |
+ /* ZeroableInteger. *VAR is an int. Like var_integer except |
that zero really means zero. */ |
var_zinteger, |
/* ZeroableUnsignedInteger. *VAR is an unsigned int. Zero really |
means zero. */ |
var_zuinteger, |
+ /* ZeroableUnsignedInteger with unlimited value. *VAR is an int, |
+ but its range is [0, INT_MAX]. -1 stands for unlimited and |
+ other negative numbers are not allowed. */ |
+ var_zuinteger_unlimited, |
/* Enumerated type. Can only have one of the specified values. |
*VAR is a char pointer to the name of the element that we |
find. */ |
@@ -115,22 +119,22 @@ struct cmd_list_element; |
extern int valid_user_defined_cmd_name_p (const char *name); |
-extern struct cmd_list_element *add_cmd (char *, enum command_class, |
+extern struct cmd_list_element *add_cmd (const char *, enum command_class, |
void (*fun) (char *, int), char *, |
struct cmd_list_element **); |
-extern struct cmd_list_element *add_alias_cmd (char *, char *, |
+extern struct cmd_list_element *add_alias_cmd (const char *, const char *, |
enum command_class, int, |
struct cmd_list_element **); |
-extern struct cmd_list_element *add_prefix_cmd (char *, enum command_class, |
+extern struct cmd_list_element *add_prefix_cmd (const char *, enum command_class, |
void (*fun) (char *, int), |
char *, |
struct cmd_list_element **, |
char *, int, |
struct cmd_list_element **); |
-extern struct cmd_list_element *add_abbrev_prefix_cmd (char *, |
+extern struct cmd_list_element *add_abbrev_prefix_cmd (const char *, |
enum command_class, |
void (*fun) (char *, |
int), |
@@ -152,7 +156,7 @@ extern void set_cmd_sfunc (struct cmd_list_element *cmd, |
cmd_sfunc_ftype *sfunc); |
typedef VEC (char_ptr) *completer_ftype (struct cmd_list_element *, |
- char *, char *); |
+ const char *, const char *); |
extern void set_cmd_completer (struct cmd_list_element *, completer_ftype *); |
@@ -179,11 +183,11 @@ extern enum cmd_types cmd_type (struct cmd_list_element *cmd); |
/* Flag for an ambiguous cmd_list result. */ |
#define CMD_LIST_AMBIGUOUS ((struct cmd_list_element *) -1) |
-extern struct cmd_list_element *lookup_cmd (char **, |
+extern struct cmd_list_element *lookup_cmd (const char **, |
struct cmd_list_element *, char *, |
int, int); |
-extern struct cmd_list_element *lookup_cmd_1 (char **, |
+extern struct cmd_list_element *lookup_cmd_1 (const char **, |
struct cmd_list_element *, |
struct cmd_list_element **, |
int); |
@@ -191,31 +195,31 @@ extern struct cmd_list_element *lookup_cmd_1 (char **, |
extern struct cmd_list_element *deprecate_cmd (struct cmd_list_element *, |
char * ); |
-extern void deprecated_cmd_warning (char **); |
+extern void deprecated_cmd_warning (const char *); |
-extern int lookup_cmd_composition (char *text, |
+extern int lookup_cmd_composition (const char *text, |
struct cmd_list_element **alias, |
struct cmd_list_element **prefix_cmd, |
struct cmd_list_element **cmd); |
-extern struct cmd_list_element *add_com (char *, enum command_class, |
+extern struct cmd_list_element *add_com (const char *, enum command_class, |
void (*fun) (char *, int), |
char *); |
-extern struct cmd_list_element *add_com_alias (char *, char *, |
+extern struct cmd_list_element *add_com_alias (const char *, const char *, |
enum command_class, int); |
-extern struct cmd_list_element *add_info (char *, |
+extern struct cmd_list_element *add_info (const char *, |
void (*fun) (char *, int), |
char *); |
-extern struct cmd_list_element *add_info_alias (char *, char *, int); |
+extern struct cmd_list_element *add_info_alias (const char *, char *, int); |
extern VEC (char_ptr) *complete_on_cmdlist (struct cmd_list_element *, |
- char *, char *); |
+ const char *, const char *, int); |
extern VEC (char_ptr) *complete_on_enum (const char *const *enumlist, |
- char *, char *); |
+ const char *, const char *); |
/* Functions that implement commands about CLI commands. */ |
@@ -233,7 +237,7 @@ typedef void (show_value_ftype) (struct ui_file *file, |
instead print the value out directly. */ |
extern show_value_ftype deprecated_show_value_hack; |
-extern void add_setshow_enum_cmd (char *name, |
+extern void add_setshow_enum_cmd (const char *name, |
enum command_class class, |
const char *const *enumlist, |
const char **var, |
@@ -245,7 +249,7 @@ extern void add_setshow_enum_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_auto_boolean_cmd (char *name, |
+extern void add_setshow_auto_boolean_cmd (const char *name, |
enum command_class class, |
enum auto_boolean *var, |
const char *set_doc, |
@@ -256,7 +260,7 @@ extern void add_setshow_auto_boolean_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_boolean_cmd (char *name, |
+extern void add_setshow_boolean_cmd (const char *name, |
enum command_class class, |
int *var, |
const char *set_doc, const char *show_doc, |
@@ -266,7 +270,7 @@ extern void add_setshow_boolean_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_filename_cmd (char *name, |
+extern void add_setshow_filename_cmd (const char *name, |
enum command_class class, |
char **var, |
const char *set_doc, |
@@ -277,7 +281,7 @@ extern void add_setshow_filename_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_string_cmd (char *name, |
+extern void add_setshow_string_cmd (const char *name, |
enum command_class class, |
char **var, |
const char *set_doc, |
@@ -288,18 +292,19 @@ extern void add_setshow_string_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_string_noescape_cmd (char *name, |
- enum command_class class, |
- char **var, |
- const char *set_doc, |
- const char *show_doc, |
- const char *help_doc, |
- cmd_sfunc_ftype *set_func, |
- show_value_ftype *show_func, |
- struct cmd_list_element **set_list, |
- struct cmd_list_element **show_list); |
- |
-extern void add_setshow_optional_filename_cmd (char *name, |
+extern struct cmd_list_element *add_setshow_string_noescape_cmd |
+ (const char *name, |
+ enum command_class class, |
+ char **var, |
+ const char *set_doc, |
+ const char *show_doc, |
+ const char *help_doc, |
+ cmd_sfunc_ftype *set_func, |
+ show_value_ftype *show_func, |
+ struct cmd_list_element **set_list, |
+ struct cmd_list_element **show_list); |
+ |
+extern void add_setshow_optional_filename_cmd (const char *name, |
enum command_class class, |
char **var, |
const char *set_doc, |
@@ -310,7 +315,7 @@ extern void add_setshow_optional_filename_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_integer_cmd (char *name, |
+extern void add_setshow_integer_cmd (const char *name, |
enum command_class class, |
int *var, |
const char *set_doc, |
@@ -321,7 +326,7 @@ extern void add_setshow_integer_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_uinteger_cmd (char *name, |
+extern void add_setshow_uinteger_cmd (const char *name, |
enum command_class class, |
unsigned int *var, |
const char *set_doc, |
@@ -332,7 +337,7 @@ extern void add_setshow_uinteger_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_zinteger_cmd (char *name, |
+extern void add_setshow_zinteger_cmd (const char *name, |
enum command_class class, |
int *var, |
const char *set_doc, |
@@ -343,7 +348,7 @@ extern void add_setshow_zinteger_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
-extern void add_setshow_zuinteger_cmd (char *name, |
+extern void add_setshow_zuinteger_cmd (const char *name, |
enum command_class class, |
unsigned int *var, |
const char *set_doc, |
@@ -354,6 +359,18 @@ extern void add_setshow_zuinteger_cmd (char *name, |
struct cmd_list_element **set_list, |
struct cmd_list_element **show_list); |
+extern void |
+ add_setshow_zuinteger_unlimited_cmd (const char *name, |
+ enum command_class class, |
+ int *var, |
+ const char *set_doc, |
+ const char *show_doc, |
+ const char *help_doc, |
+ cmd_sfunc_ftype *set_func, |
+ show_value_ftype *show_func, |
+ struct cmd_list_element **set_list, |
+ struct cmd_list_element **show_list); |
+ |
/* Do a "show" command for each thing on a command list. */ |
extern void cmd_show_list (struct cmd_list_element *, int, char *); |