/* *INDENT-OFF* */ /* ATTRIBUTE_PRINTF confuses indent, avoid running it
for now. */
/* Basic, host-specific, and target-specific definitions for GDB.
- Copyright (C) 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
- 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009,
- 2010, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1988-2005, 2007-2012 Free Software Foundation,
+ Inc.
This file is part of GDB.
#include <stdarg.h> /* For va_list. */
#include "libiberty.h"
+#include "hashtab.h"
/* Rather than duplicate all the logic in BFD for figuring out what
types to use (which can be pretty complicated), symply define them
#include "ptid.h"
-/* Check if a character is one of the commonly used C++ marker characters. */
-extern int is_cplus_marker (int);
-
/* Enable xdb commands if set. */
extern int xdb_commands;
extern struct cleanup *make_cleanup_freeargv (char **);
+struct dyn_string;
+extern struct cleanup *make_cleanup_dyn_string_delete (struct dyn_string *);
+
struct ui_file;
extern struct cleanup *make_cleanup_ui_file_delete (struct ui_file *);
extern struct cleanup *make_cleanup_value_free_to_mark (struct value *);
extern struct cleanup *make_cleanup_value_free (struct value *);
+struct so_list;
+extern struct cleanup *make_cleanup_free_so (struct so_list *so);
+
extern struct cleanup *make_final_cleanup (make_cleanup_ftype *, void *);
extern struct cleanup *make_my_cleanup (struct cleanup **,
make_cleanup_ftype *, void *);
+extern struct cleanup *make_cleanup_htab_delete (htab_t htab);
+
extern struct cleanup *make_my_cleanup2 (struct cleanup **,
make_cleanup_ftype *, void *,
void (*free_arg) (void *));
char **gdb_buildargv (const char *);
int compare_positive_ints (const void *ap, const void *bp);
+int compare_strings (const void *ap, const void *bp);
/* A wrapper for bfd_errmsg to produce a more helpful error message
in the case of bfd_error_file_ambiguously recognized.
extern int parse_pid_to_attach (char *args);
-/* From demangle.c */
+extern struct cleanup *make_bpstat_clear_actions_cleanup (void);
+
+extern int producer_is_gcc_ge_4 (const char *producer);
-extern void set_demangling_style (char *);
+#ifdef HAVE_WAITPID
+extern pid_t wait_to_die_with_timeout (pid_t pid, int *status, int timeout);
+#endif
\f
/* Annotation stuff. */
extern const char *print_core_address (struct gdbarch *gdbarch,
CORE_ADDR address);
+/* Callback hash_f and eq_f for htab_create_alloc or htab_create_alloc_ex. */
+
+extern hashval_t core_addr_hash (const void *ap);
+extern int core_addr_eq (const void *ap, const void *bp);
+
/* %d for LONGEST */
extern char *plongest (LONGEST l);
/* %u for ULONGEST */
extern char *hex_string (LONGEST);
extern char *hex_string_custom (LONGEST, int);
-extern void fprintf_symbol_filtered (struct ui_file *, char *,
+extern void fprintf_symbol_filtered (struct ui_file *, const char *,
enum language, int);
extern void perror_with_name (const char *) ATTRIBUTE_NORETURN;
extern void free_command_lines (struct command_line **);
+/* Parameters of the "info proc" command. */
+
+enum info_proc_what
+ {
+ /* Display the default cmdline, cwd and exe outputs. */
+ IP_MINIMAL,
+
+ /* Display `info proc mappings'. */
+ IP_MAPPINGS,
+
+ /* Display `info proc status'. */
+ IP_STATUS,
+
+ /* Display `info proc stat'. */
+ IP_STAT,
+
+ /* Display `info proc cmdline'. */
+ IP_CMDLINE,
+
+ /* Display `info proc exe'. */
+ IP_EXE,
+
+ /* Display `info proc cwd'. */
+ IP_CWD,
+
+ /* Display all of the above. */
+ IP_ALL
+ };
+
/* String containing the current directory (what getwd would return). */
extern char *current_directory;