This is the mail archive of the gdb-patches@sourceware.org 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]

[RFC] constify ui_out_impl


This patch constifies ui_out_impl in struct ui_out, and various
instances of ui_out_impl.

This removes a couple of FIXME comments (near cli_ui_out_impl and
mi_ui_out_impl) that did not make sense to me.

Tested by rebuilding.

2014-02-26  Tom Tromey  <tromey@redhat.com>

	* cli-out.c (cli_ui_out_impl): Now const.  Remove comment.
	* cli-out.h (cli_ui_out_impl): Now const.
	* mi/mi-out.c (mi_ui_out_impl): Now const.  Remove comment.
	* ui-out.c (struct ui_out) <impl>: Now const.
	(default_ui_out_impl): Now const.
	(ui_out_new): Make 'impl' parameter const.
	* ui-out.h (ui_out_new): Update.
---
 gdb/ChangeLog   | 10 ++++++++++
 gdb/cli-out.c   |  5 +----
 gdb/cli-out.h   |  2 +-
 gdb/mi/mi-out.c |  5 +----
 gdb/ui-out.c    |  6 +++---
 gdb/ui-out.h    |  2 +-
 6 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/gdb/cli-out.c b/gdb/cli-out.c
index b936f30..5943fa7 100644
--- a/gdb/cli-out.c
+++ b/gdb/cli-out.c
@@ -349,10 +349,7 @@ field_separator (void)
 
 /* This is the CLI ui-out implementation functions vector */
 
-/* FIXME: This can be initialized dynamically after default is set to
-   handle initial output in main.c */
-
-struct ui_out_impl cli_ui_out_impl =
+const struct ui_out_impl cli_ui_out_impl =
 {
   cli_table_begin,
   cli_table_body,
diff --git a/gdb/cli-out.h b/gdb/cli-out.h
index db7824d..a592890 100644
--- a/gdb/cli-out.h
+++ b/gdb/cli-out.h
@@ -37,7 +37,7 @@ struct cli_ui_out_data
     int suppress_output;
   };
 
-extern struct ui_out_impl cli_ui_out_impl;
+extern const struct ui_out_impl cli_ui_out_impl;
 
 
 extern struct ui_out *cli_out_new (struct ui_file *stream);
diff --git a/gdb/mi/mi-out.c b/gdb/mi/mi-out.c
index a8a3d8d..6ec41e6 100644
--- a/gdb/mi/mi-out.c
+++ b/gdb/mi/mi-out.c
@@ -67,10 +67,7 @@ static int mi_redirect (struct ui_out *uiout, struct ui_file *outstream);
 
 /* This is the MI ui-out implementation functions vector */
 
-/* FIXME: This can be initialized dynamically after default is set to
-   handle initial output in main.c */
-
-struct ui_out_impl mi_ui_out_impl =
+static const struct ui_out_impl mi_ui_out_impl =
 {
   mi_table_begin,
   mi_table_body,
diff --git a/gdb/ui-out.c b/gdb/ui-out.c
index a591352..2edb140 100644
--- a/gdb/ui-out.c
+++ b/gdb/ui-out.c
@@ -102,7 +102,7 @@ struct ui_out
   {
     int flags;
     /* Specific implementation of ui-out.  */
-    struct ui_out_impl *impl;
+    const struct ui_out_impl *impl;
     void *data;
 
     /* Current level.  */
@@ -198,7 +198,7 @@ static void default_data_destroy (struct ui_out *uiout);
 
 /* This is the default ui-out implementation functions vector.  */
 
-struct ui_out_impl default_ui_out_impl =
+const struct ui_out_impl default_ui_out_impl =
 {
   default_table_begin,
   default_table_body,
@@ -1095,7 +1095,7 @@ ui_out_query_field (struct ui_out *uiout, int colno,
 /* Initalize private members at startup.  */
 
 struct ui_out *
-ui_out_new (struct ui_out_impl *impl, void *data,
+ui_out_new (const struct ui_out_impl *impl, void *data,
 	    int flags)
 {
   struct ui_out *uiout = XNEW (struct ui_out);
diff --git a/gdb/ui-out.h b/gdb/ui-out.h
index 27e6801..cbd0b9b 100644
--- a/gdb/ui-out.h
+++ b/gdb/ui-out.h
@@ -234,7 +234,7 @@ extern void uo_field_string (struct ui_out *uiout, int fldno, int width,
 
 /* Create a ui_out object */
 
-extern struct ui_out *ui_out_new (struct ui_out_impl *impl,
+extern struct ui_out *ui_out_new (const struct ui_out_impl *impl,
 				  void *data,
 				  int flags);
 
-- 
1.8.1.4


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