This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH] Mark guile_{extension_,}script_ops as static
- From: "Christian Biesinger via gdb-patches" <gdb-patches at sourceware dot org>
- To: gdb-patches at sourceware dot org
- Cc: Christian Biesinger <cbiesinger at google dot com>
- Date: Mon, 7 Oct 2019 17:38:51 -0500
- Subject: [PATCH] Mark guile_{extension_,}script_ops as static
- Reply-to: Christian Biesinger <cbiesinger at google dot com>
This makes it clearer that the structs are only used in this file. It
required moving the definition of extension_language_guile further
down in the file, because static structs can't be forward-declared.
gdb/ChangeLog:
2019-10-07 Christian Biesinger <cbiesinger@google.com>
* guile/guile.c (guile_extension_script_ops): Remove forward
declaration and mark as static.
(guile_script_ops): Likewise.
(extension_language_guile): Move further down in the file so
it can reference the definitions for guile_{extension_,}script_ops.
---
gdb/guile/guile.c | 55 ++++++++++++++++++++++-------------------------
1 file changed, 26 insertions(+), 29 deletions(-)
diff --git a/gdb/guile/guile.c b/gdb/guile/guile.c
index defe554f76..55929f4455 100644
--- a/gdb/guile/guile.c
+++ b/gdb/guile/guile.c
@@ -71,33 +71,6 @@ static const char *const guile_print_excp_enums[] =
the default. */
const char *gdbscm_print_excp = gdbscm_print_excp_message;
-#ifdef HAVE_GUILE
-/* Forward decls, these are defined later. */
-extern const struct extension_language_script_ops guile_extension_script_ops;
-extern const struct extension_language_ops guile_extension_ops;
-#endif
-
-/* The main struct describing GDB's interface to the Guile
- extension language. */
-extern const struct extension_language_defn extension_language_guile =
-{
- EXT_LANG_GUILE,
- "guile",
- "Guile",
-
- ".scm",
- "-gdb.scm",
-
- guile_control,
-
-#ifdef HAVE_GUILE
- &guile_extension_script_ops,
- &guile_extension_ops
-#else
- NULL,
- NULL
-#endif
-};
#ifdef HAVE_GUILE
@@ -126,7 +99,7 @@ static const char boot_scm_filename[] = "boot.scm";
/* The interface between gdb proper and loading of python scripts. */
-const struct extension_language_script_ops guile_extension_script_ops =
+static const struct extension_language_script_ops guile_extension_script_ops =
{
gdbscm_source_script,
gdbscm_source_objfile_script,
@@ -136,7 +109,7 @@ const struct extension_language_script_ops guile_extension_script_ops =
/* The interface between gdb proper and guile scripting. */
-const struct extension_language_ops guile_extension_ops =
+static const struct extension_language_ops guile_extension_ops =
{
gdbscm_finish_initialization,
gdbscm_initialized,
@@ -159,7 +132,31 @@ const struct extension_language_ops guile_extension_ops =
NULL, /* gdbscm_check_quit_flag, */
NULL, /* gdbscm_set_quit_flag, */
};
+#endif
+
+/* The main struct describing GDB's interface to the Guile
+ extension language. */
+extern const struct extension_language_defn extension_language_guile =
+{
+ EXT_LANG_GUILE,
+ "guile",
+ "Guile",
+
+ ".scm",
+ "-gdb.scm",
+ guile_control,
+
+#ifdef HAVE_GUILE
+ &guile_extension_script_ops,
+ &guile_extension_ops
+#else
+ NULL,
+ NULL
+#endif
+};
+
+#ifdef HAVE_GUILE
/* Implementation of the gdb "guile-repl" command. */
static void
--
2.23.0.581.g78d2f28ef7-goog