#include "bfd.h"
#include "target.h"
#include "gdbcore.h"
+#include "thread.h"
static void
core_files_info PARAMS ((struct target_ops *));
list of threads in a core file. */
static void
-add_to_thread_list (abfd, asect, reg_sect)
+add_to_thread_list (abfd, asect, reg_sect_arg)
bfd *abfd;
asection *asect;
- asection *reg_sect;
+ PTR reg_sect_arg;
{
int thread_id;
+ asection *reg_sect = (asection *) reg_sect_arg;
if (strncmp (bfd_section_name (abfd, asect), ".reg/", 5) != 0)
return;
if (args)
error ("Too many arguments");
unpush_target (&core_ops);
+ reinit_frame_cache ();
if (from_tty)
printf_filtered ("No core file now.\n");
}
else
{
cant:
- fprintf_filtered (stderr, "Couldn't fetch registers from core file: %s\n",
+ fprintf_filtered (gdb_stderr, "Couldn't fetch registers from core file: %s\n",
bfd_errmsg (bfd_error));
}
}
else
{
- fprintf_filtered (stderr, "Couldn't fetch register set 2 from core file: %s\n",
+ fprintf_filtered (gdb_stderr, "Couldn't fetch register set 2 from core file: %s\n",
bfd_errmsg (bfd_error));
}
}
}
\f
/* If mourn is being called in all the right places, this could be say
- `gdb internal error' (since generic_mourn calls mark_breakpoints_out). */
+ `gdb internal error' (since generic_mourn calls breakpoint_init_inferior). */
static int
ignore (addr, contents)
CORE_ADDR addr;
char *contents;
{
+ return 0;
}
struct target_ops core_ops = {