This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH] use cmd_sfunc_ftype and cmd_cfunc_ftype more
- From: Tom Tromey <tromey at redhat dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tromey at redhat dot com>
- Date: Fri, 20 Jun 2014 10:59:11 -0600
- Subject: [PATCH] use cmd_sfunc_ftype and cmd_cfunc_ftype more
- Authentication-results: sourceware.org; auth=none
This patch changes a few more spots to use either cmd_sfunc_ftype or
cmd_cfunc_ftype, as appropriate. This is a bit cleaner.
Tested by rebuilding.
2014-06-20 Tom Tromey <tromey@redhat.com>
* breakpoint.c (add_catch_command): Use cmd_sfunc_ftype.
* breakpoint.h (add_catch_command): Use cmd_sfunc_ftype.
* cli/cli-decode.c (cmd_cfunc_eq, add_cmd, add_prefix_cmd)
(add_abbrev_prefix_cmd, add_info, add_com): Use cmd_cfunc_ftype.
* command.h (cmd_cfunc_ftype): Move earlier.
(add_cmd, add_prefix_cmd, add_abbrev_prefix_cmd, cmd_cfunc_eq)
(add_com, add_info): Use cmd_cfunc_ftype.
---
gdb/ChangeLog | 10 ++++++++++
gdb/breakpoint.c | 3 +--
gdb/breakpoint.h | 3 +--
gdb/cli/cli-decode.c | 13 ++++++-------
gdb/command.h | 17 +++++++++--------
5 files changed, 27 insertions(+), 19 deletions(-)
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index b04f3b7..4329fb1 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -16061,8 +16061,7 @@ static struct cmd_list_element *tcatch_cmdlist;
void
add_catch_command (char *name, char *docstring,
- void (*sfunc) (char *args, int from_tty,
- struct cmd_list_element *command),
+ cmd_sfunc_ftype *sfunc,
completer_ftype *completer,
void *user_data_catch,
void *user_data_tcatch)
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index d8e88fc..0d19ac4 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -1221,8 +1221,7 @@ extern void initialize_breakpoint_ops (void);
extern void
add_catch_command (char *name, char *docstring,
- void (*sfunc) (char *args, int from_tty,
- struct cmd_list_element *command),
+ cmd_sfunc_ftype *sfunc,
completer_ftype *completer,
void *user_data_catch,
void *user_data_tcatch);
diff --git a/gdb/cli/cli-decode.c b/gdb/cli/cli-decode.c
index d36ab4e..f09b777 100644
--- a/gdb/cli/cli-decode.c
+++ b/gdb/cli/cli-decode.c
@@ -134,8 +134,7 @@ set_cmd_sfunc (struct cmd_list_element *cmd, cmd_sfunc_ftype *sfunc)
}
int
-cmd_cfunc_eq (struct cmd_list_element *cmd,
- void (*cfunc) (char *args, int from_tty))
+cmd_cfunc_eq (struct cmd_list_element *cmd, cmd_cfunc_ftype *cfunc)
{
return cmd->func == do_cfunc && cmd->function.cfunc == cfunc;
}
@@ -183,7 +182,7 @@ set_cmd_completer (struct cmd_list_element *cmd, completer_ftype *completer)
of *LIST). */
struct cmd_list_element *
-add_cmd (const char *name, enum command_class class, void (*fun) (char *, int),
+add_cmd (const char *name, enum command_class class, cmd_cfunc_ftype *fun,
char *doc, struct cmd_list_element **list)
{
struct cmd_list_element *c
@@ -329,7 +328,7 @@ add_alias_cmd (const char *name, const char *oldname, enum command_class class,
struct cmd_list_element *
add_prefix_cmd (const char *name, enum command_class class,
- void (*fun) (char *, int),
+ cmd_cfunc_ftype *fun,
char *doc, struct cmd_list_element **prefixlist,
char *prefixname, int allow_unknown,
struct cmd_list_element **list)
@@ -357,7 +356,7 @@ add_prefix_cmd (const char *name, enum command_class class,
struct cmd_list_element *
add_abbrev_prefix_cmd (const char *name, enum command_class class,
- void (*fun) (char *, int), char *doc,
+ cmd_cfunc_ftype *fun, char *doc,
struct cmd_list_element **prefixlist, char *prefixname,
int allow_unknown, struct cmd_list_element **list)
{
@@ -846,7 +845,7 @@ delete_cmd (const char *name, struct cmd_list_element **list,
/* Add an element to the list of info subcommands. */
struct cmd_list_element *
-add_info (const char *name, void (*fun) (char *, int), char *doc)
+add_info (const char *name, cmd_cfunc_ftype *fun, char *doc)
{
return add_cmd (name, no_class, fun, doc, &infolist);
}
@@ -862,7 +861,7 @@ add_info_alias (const char *name, char *oldname, int abbrev_flag)
/* Add an element to the list of commands. */
struct cmd_list_element *
-add_com (const char *name, enum command_class class, void (*fun) (char *, int),
+add_com (const char *name, enum command_class class, cmd_cfunc_ftype *fun,
char *doc)
{
return add_cmd (name, class, fun, doc, &cmdlist);
diff --git a/gdb/command.h b/gdb/command.h
index a5040a4..0ea1c3f 100644
--- a/gdb/command.h
+++ b/gdb/command.h
@@ -113,6 +113,8 @@ var_types;
/* This structure records one command'd definition. */
struct cmd_list_element;
+typedef void cmd_cfunc_ftype (char *args, int from_tty);
+
/* Forward-declarations of the entry-points of cli/cli-decode.c. */
/* API to the manipulation of command lists. */
@@ -120,7 +122,8 @@ struct cmd_list_element;
extern int valid_user_defined_cmd_name_p (const char *name);
extern struct cmd_list_element *add_cmd (const char *, enum command_class,
- void (*fun) (char *, int), char *,
+ cmd_cfunc_ftype *fun,
+ char *,
struct cmd_list_element **);
extern struct cmd_list_element *add_alias_cmd (const char *, const char *,
@@ -128,7 +131,7 @@ extern struct cmd_list_element *add_alias_cmd (const char *, const char *,
struct cmd_list_element **);
extern struct cmd_list_element *add_prefix_cmd (const char *, enum command_class,
- void (*fun) (char *, int),
+ cmd_cfunc_ftype *fun,
char *,
struct cmd_list_element **,
char *, int,
@@ -136,8 +139,7 @@ extern struct cmd_list_element *add_prefix_cmd (const char *, enum command_class
extern struct cmd_list_element *add_abbrev_prefix_cmd (const char *,
enum command_class,
- void (*fun) (char *,
- int),
+ cmd_cfunc_ftype *fun,
char *,
struct cmd_list_element
**, char *, int,
@@ -146,7 +148,6 @@ extern struct cmd_list_element *add_abbrev_prefix_cmd (const char *,
/* Set the commands corresponding callback. */
-typedef void cmd_cfunc_ftype (char *args, int from_tty);
extern void set_cmd_cfunc (struct cmd_list_element *cmd,
cmd_cfunc_ftype *cfunc);
@@ -163,7 +164,7 @@ extern void set_cmd_completer (struct cmd_list_element *, completer_ftype *);
/* HACK: cagney/2002-02-23: Code, mostly in tracepoints.c, grubs
around in cmd objects to test the value of the commands sfunc(). */
extern int cmd_cfunc_eq (struct cmd_list_element *cmd,
- void (*cfunc) (char *args, int from_tty));
+ cmd_cfunc_ftype *cfun);
/* Each command object has a local context attached to it. */
extern void set_cmd_context (struct cmd_list_element *cmd,
@@ -203,14 +204,14 @@ extern int lookup_cmd_composition (const char *text,
struct cmd_list_element **cmd);
extern struct cmd_list_element *add_com (const char *, enum command_class,
- void (*fun) (char *, int),
+ cmd_cfunc_ftype *fun,
char *);
extern struct cmd_list_element *add_com_alias (const char *, const char *,
enum command_class, int);
extern struct cmd_list_element *add_info (const char *,
- void (*fun) (char *, int),
+ cmd_cfunc_ftype *fun,
char *);
extern struct cmd_list_element *add_info_alias (const char *, char *, int);
--
1.9.3