From: Simon Marchi <simon.marchi@polymtl.ca>
To: gdb-patches@sourceware.org
Cc: Simon Marchi <simon.marchi@polymtl.ca>
Subject: [PATCH 1/4] gdb: move execute function declarations from gdbcmd.h to top.h
Date: Tue, 23 Apr 2024 15:22:41 -0400 [thread overview]
Message-ID: <20240423192327.2750109-2-simon.marchi@polymtl.ca> (raw)
In-Reply-To: <20240423192327.2750109-1-simon.marchi@polymtl.ca>
These functions are implemented in top.c, move their declarations to
top.h.
Change-Id: I8893ef91d955156a6530734fefe8002d78c3e5fc
---
gdb/complaints.c | 1 +
gdb/gdbcmd.h | 31 -------------------------------
gdb/printcmd.c | 1 +
gdb/record-btrace.c | 1 +
gdb/record-full.c | 1 +
gdb/record.c | 1 +
gdb/stack.c | 1 +
gdb/thread.c | 1 +
gdb/top.c | 13 +++++++------
gdb/top.h | 24 ++++++++++++++++++++++++
10 files changed, 38 insertions(+), 37 deletions(-)
diff --git a/gdb/complaints.c b/gdb/complaints.c
index d3c72df6d41f..7dd5205adf83 100644
--- a/gdb/complaints.c
+++ b/gdb/complaints.c
@@ -21,6 +21,7 @@
#include "command.h"
#include "gdbcmd.h"
#include "run-on-main-thread.h"
+#include "top.h"
#include "gdbsupport/selftest.h"
#include <unordered_map>
#include <mutex>
diff --git a/gdb/gdbcmd.h b/gdb/gdbcmd.h
index 8a1f6f200520..c212a0caf736 100644
--- a/gdb/gdbcmd.h
+++ b/gdb/gdbcmd.h
@@ -29,37 +29,6 @@
#include "cli/cli-script.h"
#include "cli/cli-cmds.h"
-extern void execute_command (const char *, int);
-
-/* Run FN. Sends its output to FILE, do not display it to the screen.
- The global BATCH_FLAG will be temporarily set to true. */
-
-extern void execute_fn_to_ui_file (struct ui_file *file, std::function<void(void)> fn);
-
-/* Run FN. Capture its output into the returned string, do not display it
- to the screen. The global BATCH_FLAG will temporarily be set to true.
- When TERM_OUT is true the output is collected with terminal behaviour
- (e.g. with styling). When TERM_OUT is false raw output will be collected
- (e.g. no styling). */
-
-extern void execute_fn_to_string (std::string &res,
- std::function<void(void)> fn, bool term_out);
-
-/* As execute_fn_to_ui_file, but run execute_command for P and FROM_TTY. */
-
-extern void execute_command_to_ui_file (struct ui_file *file,
- const char *p, int from_tty);
-
-/* As execute_fn_to_string, but run execute_command for P and FROM_TTY. */
-
-extern void execute_command_to_string (std::string &res, const char *p,
- int from_tty, bool term_out);
-
-/* As execute_command_to_string, but ignore resulting string. */
-
-extern void execute_command_to_string (const char *p,
- int from_tty, bool term_out);
-
extern void print_command_line (struct command_line *, unsigned int,
struct ui_file *);
extern void print_command_lines (struct ui_out *,
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 66669f105c5c..25e391b15d5c 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -22,6 +22,7 @@
#include "frame.h"
#include "symtab.h"
#include "gdbtypes.h"
+#include "top.h"
#include "value.h"
#include "language.h"
#include "c-lang.h"
diff --git a/gdb/record-btrace.c b/gdb/record-btrace.c
index 0ef1dfbe652f..aac59ee6a6dc 100644
--- a/gdb/record-btrace.c
+++ b/gdb/record-btrace.c
@@ -28,6 +28,7 @@
#include "observable.h"
#include "cli/cli-utils.h"
#include "source.h"
+#include "top.h"
#include "ui-out.h"
#include "symtab.h"
#include "filenames.h"
diff --git a/gdb/record-full.c b/gdb/record-full.c
index 9d8c4ee438fd..d288eb957fee 100644
--- a/gdb/record-full.c
+++ b/gdb/record-full.c
@@ -39,6 +39,7 @@
#include "gdbsupport/gdb_unlinker.h"
#include "gdbsupport/byte-vector.h"
#include "async-event.h"
+#include "top.h"
#include "valprint.h"
#include "interps.h"
diff --git a/gdb/record.c b/gdb/record.c
index 5b1093dd12ee..2059fb7ea0cf 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -26,6 +26,7 @@
#include "cli/cli-utils.h"
#include "disasm.h"
#include "interps.h"
+#include "top.h"
#include <ctype.h>
diff --git a/gdb/stack.c b/gdb/stack.c
index d1832540d624..fae1fce1c39f 100644
--- a/gdb/stack.c
+++ b/gdb/stack.c
@@ -19,6 +19,7 @@
#include "event-top.h"
#include "extract-store-integer.h"
+#include "top.h"
#include "value.h"
#include "symtab.h"
#include "gdbtypes.h"
diff --git a/gdb/thread.c b/gdb/thread.c
index 60a1bef8cf0a..43c28be384ff 100644
--- a/gdb/thread.c
+++ b/gdb/thread.c
@@ -24,6 +24,7 @@
#include "frame.h"
#include "inferior.h"
#include "gdbsupport/environ.h"
+#include "top.h"
#include "value.h"
#include "target.h"
#include "gdbthread.h"
diff --git a/gdb/top.c b/gdb/top.c
index d01a0c206cc9..ee45f48b4fdd 100644
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -598,9 +598,10 @@ execute_command (const char *p, int from_tty)
cleanup_if_error.release ();
}
-/* See gdbcmd.h. */
+/* Run FN. Send its output to FILE, do not display it to the screen.
+ The global BATCH_FLAG will be temporarily set to true. */
-void
+static void
execute_fn_to_ui_file (struct ui_file *file, std::function<void(void)> fn)
{
/* GDB_STDOUT should be better already restored during these
@@ -627,7 +628,7 @@ execute_fn_to_ui_file (struct ui_file *file, std::function<void(void)> fn)
}
}
-/* See gdbcmd.h. */
+/* See top.h. */
void
execute_fn_to_string (std::string &res, std::function<void(void)> fn,
@@ -650,7 +651,7 @@ execute_fn_to_string (std::string &res, std::function<void(void)> fn,
res = str_file.release ();
}
-/* See gdbcmd.h. */
+/* See top.h. */
void
execute_command_to_ui_file (struct ui_file *file,
@@ -659,7 +660,7 @@ execute_command_to_ui_file (struct ui_file *file,
execute_fn_to_ui_file (file, [=]() { execute_command (p, from_tty); });
}
-/* See gdbcmd.h. */
+/* See top.h. */
void
execute_command_to_string (std::string &res, const char *p, int from_tty,
@@ -669,7 +670,7 @@ execute_command_to_string (std::string &res, const char *p, int from_tty,
term_out);
}
-/* See gdbcmd.h. */
+/* See top.h. */
void
execute_command_to_string (const char *p, int from_tty,
diff --git a/gdb/top.h b/gdb/top.h
index 68c637a03d83..dc3f2aaf6141 100644
--- a/gdb/top.h
+++ b/gdb/top.h
@@ -47,6 +47,30 @@ extern void quit_command (const char *, int);
extern void quit_cover (void);
extern void execute_command (const char *, int);
+/* Run FN. Capture its output into the returned string, do not display it
+ to the screen. The global BATCH_FLAG will temporarily be set to true.
+ When TERM_OUT is true the output is collected with terminal behaviour
+ (e.g. with styling). When TERM_OUT is false raw output will be collected
+ (e.g. no styling). */
+
+extern void execute_fn_to_string (std::string &res,
+ std::function<void(void)> fn, bool term_out);
+
+/* As execute_fn_to_ui_file, but run execute_command for P and FROM_TTY. */
+
+extern void execute_command_to_ui_file (struct ui_file *file,
+ const char *p, int from_tty);
+
+/* As execute_fn_to_string, but run execute_command for P and FROM_TTY. */
+
+extern void execute_command_to_string (std::string &res, const char *p,
+ int from_tty, bool term_out);
+
+/* Same as the above, but ignore resulting string. */
+
+extern void execute_command_to_string (const char *p,
+ int from_tty, bool term_out);
+
/* If the interpreter is in sync mode (we're running a user command's
list, running command hooks or similars), and we just ran a
synchronous command that started the target, wait for that command
--
2.44.0
next prev parent reply other threads:[~2024-04-23 19:23 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-23 19:22 [PATCH 0/4] Remove gdbcmd.h Simon Marchi
2024-04-23 19:22 ` Simon Marchi [this message]
2024-04-23 19:22 ` [PATCH 2/4] gdb: remove unused print_command_line and print_command_lines declarations Simon Marchi
2024-04-23 19:22 ` [PATCH 3/4] gdb: move style_set_list/style_show_list declarations to cli/cli-style.h Simon Marchi
2024-04-23 19:22 ` [PATCH 4/4] gdb: remove gdbcmd.h Simon Marchi
2024-04-25 13:55 ` [PATCH 0/4] Remove gdbcmd.h Tom Tromey
2024-04-25 17:05 ` Simon Marchi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240423192327.2750109-2-simon.marchi@polymtl.ca \
--to=simon.marchi@polymtl.ca \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).