Constify main_name
authorTom Tromey <tromey@adacore.com>
Thu, 18 Jul 2019 15:29:15 +0000 (09:29 -0600)
committerTom Tromey <tromey@adacore.com>
Thu, 18 Jul 2019 15:31:12 +0000 (09:31 -0600)
This patch constifies the return type of main_name.  There is a
comment indicating that this wasn't possible at some point in the
past, but whatever the barrier was, it is gone now.

Tested by rebuilding.

gdb/ChangeLog
2019-07-18  Tom Tromey  <tromey@adacore.com>

* symtab.c (main_name): Constify return type.
* symfile.c (set_initial_language): Update.
* symtab.h (main_name): Constify return type.

gdb/ChangeLog
gdb/symfile.c
gdb/symtab.c
gdb/symtab.h

index 175aa92..fa669da 100644 (file)
@@ -1,3 +1,9 @@
+2019-07-18  Tom Tromey  <tromey@adacore.com>
+
+       * symtab.c (main_name): Constify return type.
+       * symfile.c (set_initial_language): Update.
+       * symtab.h (main_name): Constify return type.
+
 2019-07-17  Tom Tromey  <tom@tromey.com>
 
        * tui/tui-winsource.c (tui_update_source_window)
index d2b88fc..c70a5ce 100644 (file)
@@ -1706,7 +1706,7 @@ set_initial_language (void)
 
   if (lang == language_unknown)
     {
-      char *name = main_name ();
+      const char *name = main_name ();
       struct symbol *sym = lookup_symbol (name, NULL, VAR_DOMAIN, NULL).symbol;
 
       if (sym != NULL)
index 4189899..719e5b2 100644 (file)
@@ -5741,8 +5741,10 @@ find_main_name (void)
   set_main_name ("main", language_unknown);
 }
 
-char *
-main_name (void)
+/* See symtab.h.  */
+
+const char *
+main_name ()
 {
   struct main_info *info = get_main_info ();
 
index 6780fa3..b91454c 100644 (file)
@@ -2041,11 +2041,8 @@ extern std::vector<symbol_search> search_symbols (const char *,
 extern bool treg_matches_sym_type_name (const compiled_regex &treg,
                                        const struct symbol *sym);
 
-/* The name of the ``main'' function.
-   FIXME: cagney/2001-03-20: Can't make main_name() const since some
-   of the calling code currently assumes that the string isn't
-   const.  */
-extern /*const */ char *main_name (void);
+/* The name of the ``main'' function.  */
+extern const char *main_name ();
 extern enum language main_language (void);
 
 /* Lookup symbol NAME from DOMAIN in MAIN_OBJFILE's global blocks.