Re: [rfa/cli] s/NO_FUNCTION/NULL/

Andrew Cagney
2002-01-20T23:17:20Z

Fernando,

Do you have any problems with the below?

Andrew

> Hello,
>
> The attached replaces the NO_FUNCTION macro with NULL. If you examine the code, function.cfunc() is only sometimes assigned the value NO_FUNCTION and no code actually tests for a value of NO_FUNCTION. Consequently, I can't see any point in having this macro.
>
> ok?
>
> Andrew
>
>

> 2001-12-28 Andrew Cagney <ac131313@redhat.com>
>
> * command.h (NO_FUNCTION): Delete macro.
> * cli/cli-decode.h (NO_FUNCTION): Ditto.
> * top.c (execute_command): Replace NO_FUNCTION with NULL.
> * tracepoint.c (_initialize_tracepoint): Ditto.
> * cli/cli-decode.c (add_set_cmd): Ditto.
> * cli/cli-cmds.c (init_cli_cmds): Ditto.
>
> Index: tui/ChangeLog
> 2001-12-28 Andrew Cagney <ac131313@redhat.com>
>
> * tuiWin.c (_initialize_tuiWin): Replace NO_FUNCTION with NULL.
>
> Index: command.h
> ===================================================================
> RCS file: /cvs/src/src/gdb/command.h,v
> retrieving revision 1.20
> diff -u -r1.20 command.h
> --- command.h 2001/11/22 00:23:11 1.20
> +++ command.h 2002/01/02 15:49:57
> @@ -126,9 +126,8 @@
> /* Command class; class values are chosen by application program. */
> enum command_class class;
>
> - /* Function definition of this command.
> - NO_FUNCTION for command class names and for help topics that
> - are not really commands. */
> + /* Function definition of this command. NULL for command class
> + names and for help topics that are not really commands. */
> union
> {
> /* If type is not_set_cmd, call it like this: */
> @@ -139,7 +138,6 @@
> void (*sfunc) (char *args, int from_tty, struct cmd_list_element * c);
> }
> function;
> -#define NO_FUNCTION ((void (*) (char *args, int from_tty)) 0)
>
> /* Documentation of this command (or help topic).
> First line is brief documentation; remaining lines form, with it,
> Index: top.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/top.c,v
> retrieving revision 1.50
> diff -u -r1.50 top.c
> --- top.c 2001/11/27 04:15:09 1.50
> +++ top.c 2002/01/02 15:49:58
> @@ -698,7 +698,7 @@
> execute_user_command (c, arg);
> else if (c->type == set_cmd || c->type == show_cmd)
> do_setshow_command (arg, from_tty & caution, c);
> - else if (c->function.cfunc == NO_FUNCTION)
> + else if (c->function.cfunc == NULL)
> error ("That is not a command, just a help topic.");
> else if (call_command_hook)
> call_command_hook (c, arg, from_tty & caution);
> Index: tracepoint.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/tracepoint.c,v
> retrieving revision 1.29
> diff -u -r1.29 tracepoint.c
> --- tracepoint.c 2001/12/25 22:24:38 1.29
> +++ tracepoint.c 2002/01/02 15:50:00
> @@ -2658,7 +2658,7 @@
> add_info ("scope", scope_info,
> "List the variables local to a scope");
>
> - add_cmd ("tracepoints", class_trace, NO_FUNCTION,
> + add_cmd ("tracepoints", class_trace, NULL,
> "Tracing of program execution without stopping the program.",
> &cmdlist);
>
> Index: cli/cli-cmds.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/cli/cli-cmds.c,v
> retrieving revision 1.10
> diff -u -r1.10 cli-cmds.c
> --- cli-cmds.c 2001/09/01 21:38:05 1.10
> +++ cli-cmds.c 2002/01/02 15:50:00
> @@ -605,24 +605,24 @@
> /* Define the classes of commands.
> They will appear in the help list in the reverse of this order. */
>
> - add_cmd ("internals", class_maintenance, NO_FUNCTION,
> + add_cmd ("internals", class_maintenance, NULL,
> "Maintenance commands.\n\
> Some gdb commands are provided just for use by gdb maintainers.\n\
> These commands are subject to frequent change, and may not be as\n\
> well documented as user commands.",
> &cmdlist);
> - add_cmd ("obscure", class_obscure, NO_FUNCTION, "Obscure features.", &cmdlist);
> - add_cmd ("aliases", class_alias, NO_FUNCTION, "Aliases of other commands.", &cmdlist);
> - add_cmd ("user-defined", class_user, NO_FUNCTION, "User-defined commands.\n\
> + add_cmd ("obscure", class_obscure, NULL, "Obscure features.", &cmdlist);
> + add_cmd ("aliases", class_alias, NULL, "Aliases of other commands.", &cmdlist);
> + add_cmd ("user-defined", class_user, NULL, "User-defined commands.\n\
> The commands in this class are those defined by the user.\n\
> Use the \"define\" command to define a command.", &cmdlist);
> - add_cmd ("support", class_support, NO_FUNCTION, "Support facilities.", &cmdlist);
> + add_cmd ("support", class_support, NULL, "Support facilities.", &cmdlist);
> if (!dbx_commands)
> - add_cmd ("status", class_info, NO_FUNCTION, "Status inquiries.", &cmdlist);
> - add_cmd ("files", class_files, NO_FUNCTION, "Specifying and examining files.", &cmdlist);
> - add_cmd ("breakpoints", class_breakpoint, NO_FUNCTION, "Making program stop at certain points.", &cmdlist);
> - add_cmd ("data", class_vars, NO_FUNCTION, "Examining data.", &cmdlist);
> - add_cmd ("stack", class_stack, NO_FUNCTION, "Examining the stack.\n\
> + add_cmd ("status", class_info, NULL, "Status inquiries.", &cmdlist);
> + add_cmd ("files", class_files, NULL, "Specifying and examining files.", &cmdlist);
> + add_cmd ("breakpoints", class_breakpoint, NULL, "Making program stop at certain points.", &cmdlist);
> + add_cmd ("data", class_vars, NULL, "Examining data.", &cmdlist);
> + add_cmd ("stack", class_stack, NULL, "Examining the stack.\n\
> The stack is made up of stack frames. Gdb assigns numbers to stack frames\n\
> counting from zero for the innermost (currently executing) frame.\n\n\
> At any time gdb identifies one frame as the \"selected\" frame.\n\
> @@ -630,7 +630,7 @@
> When the program being debugged stops, gdb selects the innermost frame.\n\
> The commands below can be used to select other frames by number or address.",
> &cmdlist);
> - add_cmd ("running", class_run, NO_FUNCTION, "Running the program.", &cmdlist);
> + add_cmd ("running", class_run, NULL, "Running the program.", &cmdlist);
>
> /* Define general commands. */
>
> Index: cli/cli-decode.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/cli/cli-decode.c,v
> retrieving revision 1.10
> diff -u -r1.10 cli-decode.c
> --- cli-decode.c 2001/12/20 18:35:30 1.10
> +++ cli-decode.c 2002/01/02 15:50:01
> @@ -238,13 +238,12 @@
> char *doc,
> struct cmd_list_element **list)
> {
> - struct cmd_list_element *c
> - = add_cmd (name, class, NO_FUNCTION, doc, list);
> + struct cmd_list_element *c = add_cmd (name, class, NULL, doc, list);
>
> c->type = set_cmd;
> c->var_type = var_type;
> c->var = var;
> - /* This needs to be something besides NO_FUNCTION so that this isn't
> + /* This needs to be something besides NULL so that this isn't
> treated as a help class. */
> c->function.sfunc = empty_sfunc;
> return c;
> Index: cli/cli-decode.h
> ===================================================================
> RCS file: /cvs/src/src/gdb/cli/cli-decode.h,v
> retrieving revision 1.5
> diff -u -r1.5 cli-decode.h
> --- cli-decode.h 2001/11/22 00:23:13 1.5
> +++ cli-decode.h 2002/01/02 15:50:01
> @@ -120,9 +120,8 @@
> /* Command class; class values are chosen by application program. */
> enum command_class class;
>
> - /* Function definition of this command.
> - NO_FUNCTION for command class names and for help topics that
> - are not really commands. */
> + /* Function definition of this command. NULL for command class
> + names and for help topics that are not really commands. */
> union
> {
> /* If type is not_set_cmd, call it like this: */
> @@ -133,7 +132,6 @@
> void (*sfunc) (char *args, int from_tty, struct cmd_list_element * c);
> }
> function;
> -#define NO_FUNCTION ((void (*) (char *args, int from_tty)) 0)
>
> /* Documentation of this command (or help topic).
> First line is brief documentation; remaining lines form, with it,
> Index: tui/tuiWin.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/tui/tuiWin.c,v
> retrieving revision 1.16
> diff -u -r1.16 tuiWin.c
> --- tuiWin.c 2001/07/28 19:30:54 1.16
> +++ tuiWin.c 2002/01/02 15:50:22
> @@ -280,7 +280,7 @@
>
> /* Define the classes of commands.
> They will appear in the help list in the reverse of this order. */
> - add_cmd ("tui", class_tui, NO_FUNCTION,
> + add_cmd ("tui", class_tui, NULL,
> "Text User Interface commands.",
> &cmdlist);
>
>