This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] add_set_auto_boolean_cmd() -> add_setshow_auto_boolean_cmd()


Hello,

This patch replaces add_set_auto_boolean_cmd() with a new add_setshow_auto_boolean_cmd(). Only 190 other add_show_from_set() calls needing the same cleanup :-)

committed,
Andrew

2002-06-15  Andrew Cagney  <ac131313@redhat.com>

	* command.h (add_setshow_auto_boolean_cmd): Replace
	add_set_auto_boolean_cmd.
	* cli/cli-decode.c (add_setshow_auto_boolean_cmd): Replace
	add_set_auto_boolean_cmd.
	* cli/cli-decode.h (add_set_auto_boolean_cmd): Delete declaration.
	* mips-tdep.c (_initialize_mips_tdep): Update ``set mips
	mask-address'' command.
	(show_mask_address): Add cmd parameter.
	* remote.c (add_packet_config_cmd): Update.  Change type of
	set_func and show_func to cmd_sfunc_ftype.
	(_initialize_remote): Update `set remote Z-packet'
	(show_remote_protocol_qSymbol_packet_cmd): Add cmd parameter.
	(show_remote_protocol_e_packet_cmd): Ditto.
	(show_remote_protocol_E_packet_cmd): Ditto.
	(show_remote_protocol_P_packet_cmd): Ditto.
	(show_remote_protocol_Z_software_bp_packet_cmd): Ditto.
	(show_remote_protocol_Z_hardware_bp_packet_cmd): Ditto.
	(show_remote_protocol_Z_write_wp_packet_cmd): Ditto.
	(show_remote_protocol_Z_read_wp_packet_cmd): Ditto.
	(show_remote_protocol_Z_access_wp_packet_cmd): Ditto.
	(show_remote_protocol_Z_packet_cmd): Ditto.
	(show_remote_protocol_binary_download_cmd): Ditto.
	(show_remote_cmd): Pass NULL to all of above.

Index: command.h
===================================================================
RCS file: /cvs/src/src/gdb/command.h,v
retrieving revision 1.32
diff -u -r1.32 command.h
--- command.h	15 Jun 2002 21:07:57 -0000	1.32
+++ command.h	15 Jun 2002 22:02:57 -0000
@@ -223,11 +223,14 @@
 						  char *doc,
 						  struct cmd_list_element **list);
 
-extern struct cmd_list_element *add_set_auto_boolean_cmd (char *name,
-							  enum command_class class,
-							  enum auto_boolean *var,
-							  char *doc,
-							  struct cmd_list_element **list);
+extern void add_setshow_auto_boolean_cmd (char *name,
+					  enum command_class class,
+					  enum auto_boolean *var,
+					  char *set_doc, char *show_doc,
+					  cmd_sfunc_ftype *set_func,
+					  cmd_sfunc_ftype *show_func,
+					  struct cmd_list_element **set_list,
+					  struct cmd_list_element **show_list);
 
 extern void add_setshow_boolean_cmd (char *name,
 				     enum command_class class,
Index: mips-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/mips-tdep.c,v
retrieving revision 1.78
diff -u -r1.78 mips-tdep.c
--- mips-tdep.c	15 Jun 2002 18:45:31 -0000	1.78
+++ mips-tdep.c	15 Jun 2002 22:03:01 -0000
@@ -491,7 +491,7 @@
 }
 
 static void
-show_mask_address (char *cmd, int from_tty)
+show_mask_address (char *cmd, int from_tty, struct cmd_list_element *c)
 {
   switch (mask_address_var)
     {
@@ -5083,13 +5083,13 @@
 
   /* Allow the user to control whether the upper bits of 64-bit
      addresses should be zeroed.  */
-  c = add_set_auto_boolean_cmd ("mask-address", no_class, &mask_address_var,
-				"Set zeroing of upper 32 bits of 64-bit addresses.\n\
-Use \"on\" to enable the masking, \"off\" to disable it and \"auto\" to allow GDB to determine\n\
-the correct value.\n",
-				&setmipscmdlist);
-  add_cmd ("mask-address", no_class, show_mask_address,
-	       "Show current mask-address value", &showmipscmdlist);
+  add_setshow_auto_boolean_cmd ("mask-address", no_class, &mask_address_var, "\
+Set zeroing of upper 32 bits of 64-bit addresses.\n\
+Use \"on\" to enable the masking, \"off\" to disable it and \"auto\" to \n\
+allow GDB to determine the correct value.\n", "\
+Show zeroing of upper 32 bits of 64-bit addresses.",
+				NULL, show_mask_address,
+				&setmipscmdlist, &showmipscmdlist);
 
   /* Allow the user to control the size of 32 bit registers within the
      raw remote packet.  */
Index: remote.c
===================================================================
RCS file: /cvs/src/src/gdb/remote.c,v
retrieving revision 1.86
diff -u -r1.86 remote.c
--- remote.c	15 Jun 2002 21:07:58 -0000	1.86
+++ remote.c	15 Jun 2002 22:03:07 -0000
@@ -648,11 +648,8 @@
 add_packet_config_cmd (struct packet_config *config,
 		       char *name,
 		       char *title,
-		       void (*set_func) (char *args, int from_tty,
-					 struct cmd_list_element *
-					 c),
-		       void (*show_func) (char *name,
-					  int from_tty),
+		       cmd_sfunc_ftype *set_func,
+		       cmd_sfunc_ftype *show_func,
 		       struct cmd_list_element **set_remote_list,
 		       struct cmd_list_element **show_remote_list,
 		       int legacy)
@@ -672,12 +669,10 @@
 	     name, title);
   /* set/show TITLE-packet {auto,on,off} */
   xasprintf (&cmd_name, "%s-packet", title);
-  set_cmd = add_set_auto_boolean_cmd (cmd_name, class_obscure,
-				&config->detect, set_doc,
-				set_remote_list);
-  set_cmd_sfunc (set_cmd, set_func);
-  show_cmd = add_cmd (cmd_name, class_obscure, show_func, show_doc,
-		      show_remote_list);
+  add_setshow_auto_boolean_cmd (cmd_name, class_obscure,
+				&config->detect, set_doc, show_doc,
+				set_func, show_func,
+				set_remote_list, show_remote_list);
   /* set/show remote NAME-packet {auto,on,off} -- legacy */
   if (legacy)
     {
@@ -765,7 +760,8 @@
 }
 
 static void
-show_remote_protocol_qSymbol_packet_cmd (char *args, int from_tty)
+show_remote_protocol_qSymbol_packet_cmd (char *args, int from_tty,
+					 struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_qSymbol);
 }
@@ -781,7 +777,8 @@
 }
 
 static void
-show_remote_protocol_e_packet_cmd (char *args, int from_tty)
+show_remote_protocol_e_packet_cmd (char *args, int from_tty,
+				   struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_e);
 }
@@ -798,7 +795,8 @@
 }
 
 static void
-show_remote_protocol_E_packet_cmd (char *args, int from_tty)
+show_remote_protocol_E_packet_cmd (char *args, int from_tty,
+				   struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_E);
 }
@@ -816,7 +814,8 @@
 }
 
 static void
-show_remote_protocol_P_packet_cmd (char *args, int from_tty)
+show_remote_protocol_P_packet_cmd (char *args, int from_tty,
+				   struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_P);
 }
@@ -846,7 +845,8 @@
 }
 
 static void
-show_remote_protocol_Z_software_bp_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_software_bp_packet_cmd (char *args, int from_tty,
+					       struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_Z[Z_PACKET_SOFTWARE_BP]);
 }
@@ -859,7 +859,8 @@
 }
 
 static void
-show_remote_protocol_Z_hardware_bp_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_hardware_bp_packet_cmd (char *args, int from_tty,
+					       struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_Z[Z_PACKET_HARDWARE_BP]);
 }
@@ -872,7 +873,8 @@
 }
 
 static void
-show_remote_protocol_Z_write_wp_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_write_wp_packet_cmd (char *args, int from_tty,
+					    struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_Z[Z_PACKET_WRITE_WP]);
 }
@@ -885,7 +887,8 @@
 }
 
 static void
-show_remote_protocol_Z_read_wp_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_read_wp_packet_cmd (char *args, int from_tty,
+					   struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_Z[Z_PACKET_READ_WP]);
 }
@@ -898,7 +901,8 @@
 }
 
 static void
-show_remote_protocol_Z_access_wp_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_access_wp_packet_cmd (char *args, int from_tty,
+					     struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_Z[Z_PACKET_ACCESS_WP]);
 }
@@ -921,7 +925,8 @@
 }
 
 static void
-show_remote_protocol_Z_packet_cmd (char *args, int from_tty)
+show_remote_protocol_Z_packet_cmd (char *args, int from_tty,
+				   struct cmd_list_element *c)
 {
   int i;
   for (i = 0; i < NR_Z_PACKET_TYPES; i++)
@@ -962,8 +967,8 @@
 }
 
 static void
-show_remote_protocol_binary_download_cmd (char *args,
-					  int from_tty)
+show_remote_protocol_binary_download_cmd (char *args, int from_tty,
+					  struct cmd_list_element *c)
 {
   show_packet_config_cmd (&remote_protocol_binary_download);
 }
@@ -5968,13 +5973,14 @@
 static void
 show_remote_cmd (char *args, int from_tty)
 {
-  
-  show_remote_protocol_Z_packet_cmd (args, from_tty);
-  show_remote_protocol_e_packet_cmd (args, from_tty);
-  show_remote_protocol_E_packet_cmd (args, from_tty);
-  show_remote_protocol_P_packet_cmd (args, from_tty);
-  show_remote_protocol_qSymbol_packet_cmd (args, from_tty);
-  show_remote_protocol_binary_download_cmd (args, from_tty);
+  /* FIXME: cagney/2002-06-15: This function should iterate over
+     remote_show_cmdlist for a list of sub commands to show.  */
+  show_remote_protocol_Z_packet_cmd (args, from_tty, NULL);
+  show_remote_protocol_e_packet_cmd (args, from_tty, NULL);
+  show_remote_protocol_E_packet_cmd (args, from_tty, NULL);
+  show_remote_protocol_P_packet_cmd (args, from_tty, NULL);
+  show_remote_protocol_qSymbol_packet_cmd (args, from_tty, NULL);
+  show_remote_protocol_binary_download_cmd (args, from_tty, NULL);
 }
 
 static void
@@ -6207,12 +6213,11 @@
 			 0);
 
   /* Keep the old ``set remote Z-packet ...'' working. */
-  tmpcmd = add_set_auto_boolean_cmd ("Z-packet", class_obscure,
-				     &remote_Z_packet_detect,
-				     "\
-Set use of remote protocol `Z' packets", &remote_set_cmdlist);
-  set_cmd_sfunc (tmpcmd, set_remote_protocol_Z_packet_cmd);
-  add_cmd ("Z-packet", class_obscure, show_remote_protocol_Z_packet_cmd,
-	   "Show use of remote protocol `Z' packets ",
-	   &remote_show_cmdlist);
+  add_setshow_auto_boolean_cmd ("Z-packet", class_obscure,
+				&remote_Z_packet_detect, "\
+Set use of remote protocol `Z' packets",
+				"Show use of remote protocol `Z' packets ",
+				set_remote_protocol_Z_packet_cmd,
+				show_remote_protocol_Z_packet_cmd,
+				&remote_set_cmdlist, &remote_show_cmdlist);
 }
Index: cli/cli-decode.c
===================================================================
RCS file: /cvs/src/src/gdb/cli/cli-decode.c,v
retrieving revision 1.23
diff -u -r1.23 cli-decode.c
--- cli/cli-decode.c	15 Jun 2002 21:07:59 -0000	1.23
+++ cli/cli-decode.c	15 Jun 2002 22:03:08 -0000
@@ -389,23 +389,26 @@
   return c;
 }
 
-/* Add element named NAME to command list LIST (the list for set
-   or some sublist thereof).
-   CLASS is as in add_cmd.
-   VAR is address of the variable which will contain the value.
-   DOC is the documentation string.  */
-struct cmd_list_element *
-add_set_auto_boolean_cmd (char *name,
-			  enum command_class class,
-			  enum auto_boolean *var,
-			  char *doc,
-			  struct cmd_list_element **list)
+/* Add an auto-boolean command named NAME to both the set and show
+   command list lists.  CLASS is as in add_cmd.  VAR is address of the
+   variable which will contain the value.  DOC is the documentation
+   string.  FUNC is the corresponding callback.  */
+void
+add_setshow_auto_boolean_cmd (char *name,
+			      enum command_class class,
+			      enum auto_boolean *var,
+			      char *set_doc, char *show_doc,
+			      cmd_sfunc_ftype *set_func,
+			      cmd_sfunc_ftype *show_func,
+			      struct cmd_list_element **set_list,
+			      struct cmd_list_element **show_list)
 {
   static const char *auto_boolean_enums[] = { "on", "off", "auto", NULL };
   struct cmd_list_element *c;
-  c = add_set_cmd (name, class, var_auto_boolean, var, doc, list);
+  c = add_setshow_cmd (name, class, var_auto_boolean, var,
+		       set_doc, show_doc, set_func, show_func,
+		       set_list, show_list);
   c->enums = auto_boolean_enums;
-  return c;
 }
 
 /* Add element named NAME to both the set and show command LISTs (the
Index: cli/cli-decode.h
===================================================================
RCS file: /cvs/src/src/gdb/cli/cli-decode.h,v
retrieving revision 1.14
diff -u -r1.14 cli-decode.h
--- cli/cli-decode.h	15 Jun 2002 21:07:59 -0000	1.14
+++ cli/cli-decode.h	15 Jun 2002 22:03:09 -0000
@@ -293,12 +293,6 @@
 						  char *doc,
 						  struct cmd_list_element **list);
 
-extern struct cmd_list_element *add_set_auto_boolean_cmd (char *name,
-							  enum command_class class,
-							  enum auto_boolean *var,
-							  char *doc,
-							  struct cmd_list_element **list);
-
 extern struct cmd_list_element *add_show_from_set (struct cmd_list_element *,
 						   struct cmd_list_element
 						   **);

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]