GDB (xrefs)
Functions | Variables
cli-cmds.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "readline/readline.h"
#include "readline/tilde.h"
#include "completer.h"
#include "target.h"
#include "gdb_wait.h"
#include "gdb_regex.h"
#include "gdb_vfork.h"
#include "linespec.h"
#include "expression.h"
#include "frame.h"
#include "value.h"
#include "language.h"
#include "filenames.h"
#include "objfiles.h"
#include "source.h"
#include "disasm.h"
#include "tracepoint.h"
#include "filestuff.h"
#include "location.h"
#include "ui-out.h"
#include "top.h"
#include "cli/cli-decode.h"
#include "cli/cli-script.h"
#include "cli/cli-setshow.h"
#include "cli/cli-cmds.h"
#include "cli/cli-utils.h"
#include "extension.h"
#include <fcntl.h>
#include <algorithm>
#include <string>

Go to the source code of this file.

Functions

static void print_sal_location (const symtab_and_line &sal)
 
static void ambiguous_line_spec (gdb::array_view< const symtab_and_line > sals, const char *format,...) ATTRIBUTE_PRINTF(2
 
static void static void filter_sals (std::vector< symtab_and_line > &)
 
void error_no_arg (const char *why)
 
static void info_command (const char *arg, int from_tty)
 
static void show_command (const char *arg, int from_tty)
 
static void help_command (const char *command, int from_tty)
 
static void complete_command (const char *arg, int from_tty)
 
int is_complete_command (struct cmd_list_element *c)
 
static void show_version (const char *args, int from_tty)
 
static void show_configuration (const char *args, int from_tty)
 
void quit_command (const char *args, int from_tty)
 
static void pwd_command (const char *args, int from_tty)
 
void cd_command (const char *dir, int from_tty)
 
static void show_script_ext_mode (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
gdb::optional< open_scriptfind_and_open_script (const char *script_file, int search_path)
 
static void source_script_from_stream (FILE *stream, const char *file, const char *file_to_open)
 
static void source_script_with_search (const char *file, int from_tty, int search_path)
 
void source_script (const char *file, int from_tty)
 
static void source_command (const char *args, int from_tty)
 
static void echo_command (const char *text, int from_tty)
 
static void shell_escape (const char *arg, int from_tty)
 
static void shell_command (const char *arg, int from_tty)
 
static void edit_command (const char *arg, int from_tty)
 
static void list_command (const char *arg, int from_tty)
 
static void print_disassembly (struct gdbarch *gdbarch, const char *name, CORE_ADDR low, CORE_ADDR high, gdb_disassembly_flags flags)
 
static void disassemble_current_function (gdb_disassembly_flags flags)
 
static void disassemble_command (const char *arg, int from_tty)
 
static void make_command (const char *arg, int from_tty)
 
static void show_user (const char *args, int from_tty)
 
static void apropos_command (const char *searchstr, int from_tty)
 
static std::string argv_to_string (char **argv, int n)
 
static int valid_command_p (const char *command)
 
static void alias_usage_error (void)
 
static void alias_command (const char *args, int from_tty)
 
static int cmp_symtabs (const symtab_and_line &sala, const symtab_and_line &salb)
 
static void set_debug (const char *arg, int from_tty)
 
static void show_debug (const char *args, int from_tty)
 
void init_cmd_lists (void)
 
static void show_info_verbose (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void show_history_expansion_p (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void show_remote_debug (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void show_remote_timeout (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void show_max_user_call_depth (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
void _initialize_cli_cmds (void)
 
void init_cli_cmds (void)
 

Variables

unsigned int max_user_call_depth
 
struct cmd_list_elementcmdlist
 
struct cmd_list_elementinfolist
 
struct cmd_list_elementenablelist
 
struct cmd_list_elementdisablelist
 
struct cmd_list_elementstoplist
 
struct cmd_list_elementdeletelist
 
struct cmd_list_elementdetachlist
 
struct cmd_list_elementkilllist
 
struct cmd_list_elementsetlist
 
struct cmd_list_elementunsetlist
 
struct cmd_list_elementshowlist
 
struct cmd_list_elementsethistlist
 
struct cmd_list_elementshowhistlist
 
struct cmd_list_elementunsethistlist
 
struct cmd_list_elementmaintenancelist
 
struct cmd_list_elementmaintenanceinfolist
 
struct cmd_list_elementmaintenanceprintlist
 
struct cmd_list_elementmaintenancechecklist
 
struct cmd_list_elementsetprintlist
 
struct cmd_list_elementshowprintlist
 
struct cmd_list_elementsetdebuglist
 
struct cmd_list_elementshowdebuglist
 
struct cmd_list_elementsetchecklist
 
struct cmd_list_elementshowchecklist
 
int source_verbose = 0
 
int trace_commands = 0
 
static const char script_ext_off [] = "off"
 
static const char script_ext_soft [] = "soft"
 
static const char script_ext_strict [] = "strict"
 
static const char *const script_ext_enums []
 
static const char * script_ext_mode = script_ext_soft
 

Function Documentation

◆ _initialize_cli_cmds()

void _initialize_cli_cmds ( void  )

◆ alias_command()

static void alias_command ( const char *  args,
int  from_tty 
)
static

◆ alias_usage_error()

static void alias_usage_error ( void  )
static

Definition at line 1372 of file cli-cmds.c.

References _, and error().

Referenced by alias_command().

◆ ambiguous_line_spec()

static void ambiguous_line_spec ( gdb::array_view< const symtab_and_line sals,
const char *  format,
  ... 
)
static

Definition at line 1519 of file cli-cmds.c.

References print_sal_location(), and vprintf_filtered().

Referenced by edit_command(), and list_command().

◆ apropos_command()

static void apropos_command ( const char *  searchstr,
int  from_tty 
)
static

Definition at line 1311 of file cli-cmds.c.

References _, apropos_cmd(), cmdlist, error(), and gdb_stdout.

Referenced by _initialize_cli_cmds().

◆ argv_to_string()

static std::string argv_to_string ( char **  argv,
int  n 
)
static

Definition at line 1330 of file cli-cmds.c.

References gdb::argv, gdb_assert, and string.

Referenced by alias_command().

◆ cd_command()

void cd_command ( const char *  dir,
int  from_tty 
)

◆ cmp_symtabs()

static int cmp_symtabs ( const symtab_and_line sala,
const symtab_and_line salb 
)
static

Definition at line 1535 of file cli-cmds.c.

References symtab::filename, symtab_and_line::line, symtab_and_line::symtab, and SYMTAB_DIRNAME.

Referenced by filter_sals().

◆ complete_command()

static void complete_command ( const char *  arg,
int  from_tty 
)
static

◆ disassemble_command()

static void disassemble_command ( const char *  arg,
int  from_tty 
)
static

◆ disassemble_current_function()

static void disassemble_current_function ( gdb_disassembly_flags  flags)
static

◆ echo_command()

static void echo_command ( const char *  text,
int  from_tty 
)
static

◆ edit_command()

static void edit_command ( const char *  arg,
int  from_tty 
)
static

◆ error_no_arg()

void error_no_arg ( const char *  why)

◆ filter_sals()

static void filter_sals ( std::vector< symtab_and_line > &  sals)
static

Definition at line 1571 of file cli-cmds.c.

References cmp_symtabs(), and current_program_space.

Referenced by edit_command(), and list_command().

◆ find_and_open_script()

gdb::optional<open_script> find_and_open_script ( const char *  script_file,
int  search_path 
)

◆ help_command()

static void help_command ( const char *  command,
int  from_tty 
)
static

Definition at line 215 of file cli-cmds.c.

References gdb_stdout, and help_cmd().

Referenced by _initialize_cli_cmds().

◆ info_command()

static void info_command ( const char *  arg,
int  from_tty 
)
static

Definition at line 195 of file cli-cmds.c.

References _, all_commands, gdb_stdout, help_list(), infolist, and printf_unfiltered().

Referenced by _initialize_cli_cmds().

◆ init_cli_cmds()

void init_cli_cmds ( void  )

◆ init_cmd_lists()

void init_cmd_lists ( void  )

Definition at line 1606 of file cli-cmds.c.

References max_user_call_depth.

Referenced by gdb_init().

◆ is_complete_command()

int is_complete_command ( struct cmd_list_element c)

Definition at line 310 of file cli-cmds.c.

References cmd_cfunc_eq(), and complete_command().

Referenced by execute_command().

◆ list_command()

static void list_command ( const char *  arg,
int  from_tty 
)
static

◆ make_command()

static void make_command ( const char *  arg,
int  from_tty 
)
static

Definition at line 1270 of file cli-cmds.c.

References shell_escape(), and string.

Referenced by _initialize_cli_cmds().

◆ print_disassembly()

static void print_disassembly ( struct gdbarch gdbarch,
const char *  name,
CORE_ADDR  low,
CORE_ADDR  high,
gdb_disassembly_flags  flags 
)
static

◆ print_sal_location()

static void print_sal_location ( const symtab_and_line sal)
static

◆ pwd_command()

static void pwd_command ( const char *  args,
int  from_tty 
)
static

Definition at line 353 of file cli-cmds.c.

References _, current_directory, error(), printf_unfiltered(), and safe_strerror().

Referenced by _initialize_cli_cmds(), and cd_command().

◆ quit_command()

void quit_command ( const char *  args,
int  from_tty 
)

◆ set_debug()

static void set_debug ( const char *  arg,
int  from_tty 
)
static

Definition at line 1592 of file cli-cmds.c.

References _, all_commands, gdb_stdout, help_list(), printf_unfiltered(), and setdebuglist.

Referenced by _initialize_cli_cmds().

◆ shell_command()

static void shell_command ( const char *  arg,
int  from_tty 
)
static

Definition at line 760 of file cli-cmds.c.

References shell_escape().

Referenced by _initialize_cli_cmds(), and execv_argv::init_for_shell().

◆ shell_escape()

static void shell_escape ( const char *  arg,
int  from_tty 
)
static

◆ show_command()

static void show_command ( const char *  arg,
int  from_tty 
)
static

Definition at line 205 of file cli-cmds.c.

References cmd_show_list(), and showlist.

Referenced by _initialize_cli_cmds().

◆ show_configuration()

static void show_configuration ( const char *  args,
int  from_tty 
)
static

Definition at line 323 of file cli-cmds.c.

References gdb_stdout, and print_gdb_configuration().

Referenced by _initialize_cli_cmds().

◆ show_debug()

static void show_debug ( const char *  args,
int  from_tty 
)
static

Definition at line 1600 of file cli-cmds.c.

References cmd_show_list(), and showdebuglist.

Referenced by _initialize_cli_cmds().

◆ show_history_expansion_p()

static void show_history_expansion_p ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 1625 of file cli-cmds.c.

References _, and fprintf_filtered().

Referenced by _initialize_cli_cmds().

◆ show_info_verbose()

static void show_info_verbose ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 1612 of file cli-cmds.c.

References _, fprintf_filtered(), and info_verbose.

Referenced by _initialize_cli_cmds().

◆ show_max_user_call_depth()

static void show_max_user_call_depth ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 1650 of file cli-cmds.c.

References _, and fprintf_filtered().

Referenced by _initialize_cli_cmds().

◆ show_remote_debug()

static void show_remote_debug ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 1633 of file cli-cmds.c.

References _, and fprintf_filtered().

Referenced by _initialize_cli_cmds().

◆ show_remote_timeout()

static void show_remote_timeout ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 1641 of file cli-cmds.c.

References _, and fprintf_filtered().

Referenced by _initialize_cli_cmds().

◆ show_script_ext_mode()

static void show_script_ext_mode ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

Definition at line 478 of file cli-cmds.c.

References _, and fprintf_filtered().

Referenced by _initialize_cli_cmds().

◆ show_user()

static void show_user ( const char *  args,
int  from_tty 
)
static

◆ show_version()

static void show_version ( const char *  args,
int  from_tty 
)
static

Definition at line 316 of file cli-cmds.c.

References gdb_stdout, print_gdb_version(), and printf_filtered().

Referenced by _initialize_cli_cmds().

◆ source_command()

static void source_command ( const char *  args,
int  from_tty 
)
static

Definition at line 618 of file cli-cmds.c.

References make_scoped_restore(), skip_spaces(), source_script_with_search(), and source_verbose.

Referenced by init_cli_cmds().

◆ source_script()

void source_script ( const char *  file,
int  from_tty 
)

Definition at line 612 of file cli-cmds.c.

References source_script_with_search().

Referenced by captured_main_1().

◆ source_script_from_stream()

static void source_script_from_stream ( FILE *  stream,
const char *  file,
const char *  file_to_open 
)
static

◆ source_script_with_search()

static void source_script_with_search ( const char *  file,
int  from_tty,
int  search_path 
)
static

◆ valid_command_p()

static int valid_command_p ( const char *  command)
static

Definition at line 1352 of file cli-cmds.c.

References cmdlist, and lookup_cmd_1().

Referenced by alias_command().

Variable Documentation

◆ cmdlist

struct cmd_list_element* cmdlist

◆ deletelist

struct cmd_list_element* deletelist

◆ detachlist

struct cmd_list_element* detachlist

Definition at line 103 of file cli-cmds.c.

Referenced by _initialize_infcmd(), _initialize_linux_fork(), and initialize_inferiors().

◆ disablelist

struct cmd_list_element* disablelist

◆ enablelist

struct cmd_list_element* enablelist

◆ infolist

struct cmd_list_element* infolist

◆ killlist

struct cmd_list_element* killlist

Definition at line 107 of file cli-cmds.c.

Referenced by _initialize_infcmd(), and initialize_inferiors().

◆ maintenancechecklist

struct cmd_list_element* maintenancechecklist

◆ maintenanceinfolist

struct cmd_list_element* maintenanceinfolist

◆ maintenancelist

struct cmd_list_element* maintenancelist

◆ maintenanceprintlist

struct cmd_list_element* maintenanceprintlist

◆ max_user_call_depth

unsigned int max_user_call_depth

Definition at line 73 of file cli-cmds.c.

Referenced by _initialize_cli_cmds(), execute_user_command(), and init_cmd_lists().

◆ script_ext_enums

const char* const script_ext_enums[]
static
Initial value:
= {
NULL
}
static const char script_ext_off[]
Definition: cli-cmds.c:168
static const char script_ext_soft[]
Definition: cli-cmds.c:169
static const char script_ext_strict[]
Definition: cli-cmds.c:170

Definition at line 172 of file cli-cmds.c.

Referenced by _initialize_cli_cmds().

◆ script_ext_mode

const char* script_ext_mode = script_ext_soft
static

Definition at line 179 of file cli-cmds.c.

Referenced by _initialize_cli_cmds(), and source_script_from_stream().

◆ script_ext_off

const char script_ext_off[] = "off"
static

Definition at line 168 of file cli-cmds.c.

Referenced by source_script_from_stream().

◆ script_ext_soft

const char script_ext_soft[] = "soft"
static

Definition at line 169 of file cli-cmds.c.

Referenced by source_script_from_stream().

◆ script_ext_strict

const char script_ext_strict[] = "strict"
static

Definition at line 170 of file cli-cmds.c.

◆ setchecklist

struct cmd_list_element* setchecklist

Definition at line 157 of file cli-cmds.c.

Referenced by _initialize_gdbtypes(), _initialize_language(), and set_check().

◆ setdebuglist

struct cmd_list_element* setdebuglist

◆ sethistlist

struct cmd_list_element* sethistlist

Definition at line 123 of file cli-cmds.c.

Referenced by _initialize_cli_cmds(), init_main(), and set_history().

◆ setlist

struct cmd_list_element* setlist

Definition at line 111 of file cli-cmds.c.

Referenced by _initialize_ada_language(), _initialize_agent(), _initialize_alpha_tdep(), _initialize_arm_tdep(), _initialize_breakpoint(), _initialize_charset(), _initialize_cli_cmds(), _initialize_cli_logging(), _initialize_compile(), _initialize_complaints(), _initialize_completer(), _initialize_core(), _initialize_cp_abi(), _initialize_cris_tdep(), _initialize_darwin_inferior(), _initialize_dcache(), _initialize_demangler(), _initialize_disasm(), _initialize_dwarf2_read(), _initialize_exec(), _initialize_filesystem(), _initialize_fork_child(), _initialize_frame(), _initialize_gdb_osabi(), _initialize_gdbarch_utils(), _initialize_gdbtypes(), _initialize_i386_tdep(), _initialize_infcall(), _initialize_infcmd(), _initialize_infrun(), _initialize_language(), _initialize_linux_tdep(), _initialize_maint_cmds(), _initialize_mem(), _initialize_mi_main(), _initialize_mips_tdep(), _initialize_printcmd(), _initialize_proc_api(), _initialize_python(), _initialize_ravenscar(), _initialize_record(), _initialize_remote(), _initialize_rs6000_tdep(), _initialize_ser_dos(), _initialize_ser_hardwire(), _initialize_ser_tcp(), _initialize_serial(), _initialize_sh_tdep(), _initialize_solib(), _initialize_source(), _initialize_spu_tdep(), _initialize_stack(), _initialize_symfile(), _initialize_symtab(), _initialize_target_dcache(), _initialize_target_descriptions(), _initialize_thread_db(), _initialize_tracepoint(), _initialize_tui_win(), _initialize_valops(), _initialize_valprint(), _initialize_values(), _initialize_windows_nat(), add_set_language_command(), add_task_commands(), add_thread_commands(), auto_load_set_cmdlist_get(), do_set_command(), gdbpy_initialize_auto_load(), gdbscm_register_parameter_x(), init_main(), initialize_current_architecture(), initialize_targets(), initialize_utils(), install_gdb_commands(), parmpy_init(), and set_cmd_prefix().

◆ setprintlist

struct cmd_list_element* setprintlist

◆ showchecklist

struct cmd_list_element* showchecklist

Definition at line 159 of file cli-cmds.c.

Referenced by _initialize_gdbtypes(), _initialize_language(), and show_check().

◆ showdebuglist

struct cmd_list_element* showdebuglist

◆ showhistlist

struct cmd_list_element* showhistlist

Definition at line 127 of file cli-cmds.c.

Referenced by _initialize_cli_cmds(), init_main(), and show_history().

◆ showlist

struct cmd_list_element* showlist

Definition at line 119 of file cli-cmds.c.

Referenced by _initialize_ada_language(), _initialize_agent(), _initialize_alpha_tdep(), _initialize_arm_tdep(), _initialize_breakpoint(), _initialize_charset(), _initialize_cli_cmds(), _initialize_cli_logging(), _initialize_compile(), _initialize_complaints(), _initialize_completer(), _initialize_copying(), _initialize_core(), _initialize_cp_abi(), _initialize_cris_tdep(), _initialize_darwin_inferior(), _initialize_dcache(), _initialize_demangler(), _initialize_disasm(), _initialize_dwarf2_read(), _initialize_exec(), _initialize_filesystem(), _initialize_fork_child(), _initialize_frame(), _initialize_gdb_osabi(), _initialize_gdbarch_utils(), _initialize_gdbtypes(), _initialize_i386_tdep(), _initialize_infcall(), _initialize_infcmd(), _initialize_infrun(), _initialize_language(), _initialize_linux_tdep(), _initialize_maint_cmds(), _initialize_mem(), _initialize_mi_main(), _initialize_mips_tdep(), _initialize_proc_api(), _initialize_python(), _initialize_ravenscar(), _initialize_record(), _initialize_remote(), _initialize_rs6000_tdep(), _initialize_ser_dos(), _initialize_ser_hardwire(), _initialize_ser_tcp(), _initialize_serial(), _initialize_sh_tdep(), _initialize_solib(), _initialize_source(), _initialize_spu_tdep(), _initialize_stack(), _initialize_symfile(), _initialize_symtab(), _initialize_target_dcache(), _initialize_target_descriptions(), _initialize_thread_db(), _initialize_tracepoint(), _initialize_tui_win(), _initialize_valops(), _initialize_valprint(), _initialize_values(), _initialize_windows_nat(), add_set_language_command(), add_task_commands(), add_thread_commands(), auto_load_show_cmdlist_get(), gdbpy_initialize_auto_load(), gdbscm_register_parameter_x(), init_main(), initialize_current_architecture(), initialize_targets(), initialize_utils(), install_gdb_commands(), parmpy_init(), set_verbose(), and show_command().

◆ showprintlist

struct cmd_list_element* showprintlist

◆ source_verbose

int source_verbose = 0

Definition at line 163 of file cli-cmds.c.

Referenced by print_command_trace(), and source_command().

◆ stoplist

struct cmd_list_element* stoplist

Definition at line 95 of file cli-cmds.c.

Referenced by _initialize_breakpoint().

◆ trace_commands

int trace_commands = 0

Definition at line 164 of file cli-cmds.c.

Referenced by _initialize_cli_cmds(), and print_command_trace().

◆ unsethistlist

struct cmd_list_element* unsethistlist

Definition at line 131 of file cli-cmds.c.

◆ unsetlist

struct cmd_list_element* unsetlist