maintenance canonicalize
Show the canonical form of a C++ name.
+maintenance set console-translation-mode <binary|text>
+maintenance show console-translation-mode
+ Controls the translation mode of GDB stdout/stderr. MS-Windows only. In
+ binary mode, no translation is done. In text mode, a Line Feed is
+ translated into a Carriage Return-Line Feed combination.
+
set riscv numeric-register-names on|off
show riscv numeric-register-names
Controls whether GDB refers to risc-v registers by their numeric names
@item show watchdog
Show the current setting of the target wait timeout.
+
+@kindex maint set console-translation-mode
+@kindex maint show console-translation-mode
+@item maint set console-translation-mode @r{[}binary|text@r{]}
+@itemx maint show console-translation-mode
+Controls the translation mode of @value{GDBN} stdout/stderr. MS-Windows
+only. Useful for running the @value{GDBN} testsuite.
+
+The translation mode values are as follows:
+@table @code
+@item binary
+No translation.
+@item text
+Translate @samp{\n} (LF, a single Line Feed) into @samp{\r\n} (CR-LF, a
+Carriage Return-Line Feed combination).
+@end table
+
@end table
@node Remote Protocol
#include "gdbsupport/gdb_select.h"
#include "inferior.h"
#include "cli/cli-style.h"
+#include "command.h"
+#include "cli/cli-cmds.h"
#include <windows.h>
#include <signal.h>
current_handler = fn;
return result;
}
+
+/* Set stdout and stderr handles to translation mode MODE. */
+
+static void
+set_console_translation_mode (int mode)
+{
+ setmode (fileno (stdout), mode);
+ setmode (fileno (stderr), mode);
+}
+
+/* Arg in "maint set console-translation-mode <arg>. */
+
+static std::string maint_console_translation_mode;
+
+/* Current value of "maint set/show console-translation-mode". */
+
+static std::string console_translation_mode = "unknown";
+
+/* Sets the console translation mode. */
+
+static void
+set_maint_console_translation_mode (const char *args, int from_tty,
+ struct cmd_list_element *c)
+{
+ if (maint_console_translation_mode == "binary")
+ set_console_translation_mode (O_BINARY);
+ else if (maint_console_translation_mode == "text")
+ set_console_translation_mode (O_TEXT);
+ else
+ error (_("Invalid console translation mode: %s"),
+ maint_console_translation_mode.c_str ());
+
+ console_translation_mode = maint_console_translation_mode;
+}
+
+/* Shows the console translation mode. */
+
+static void
+show_maint_console_translation_mode (struct ui_file *file, int from_tty,
+ struct cmd_list_element *c,
+ const char *value)
+{
+ gdb_printf (file, _("Console translation mode is %s.\n"),
+ console_translation_mode.c_str ());
+}
+
+extern void _initialize_mingw_hdep ();
+
+void
+_initialize_mingw_hdep ()
+{
+ add_setshow_string_cmd ("console-translation-mode",
+ class_maintenance,
+ &maint_console_translation_mode, _("\
+Set the translation mode of stdout/stderr."), _("\
+Show the translation mode of stdout/stderr."), _("\
+Use \"binary\", or \"text\""),
+ set_maint_console_translation_mode,
+ show_maint_console_translation_mode,
+ &maintenance_set_cmdlist,
+ &maintenance_show_cmdlist);
+}