int n;
char *p, *q;
- extern int strtol();
-
/* if no args, then nothing to do. */
if (args == NULL || *args == '\0')
return;
if (baud_rate != -1)
printf_filtered (" at baud rate of %d",
baud_rate);
- print_filtered ("\n");
+ printf_filtered ("\n");
}
push_target(gr->ops);
sr_write_cr (args);
sr_write ("\030", 1);
+ registers_changed ();
gr_expect_prompt ();
}
abfd = bfd_openr (args, (char *) 0);
if (!abfd)
+ /* FIXME: should be using bfd_errmsg, not assuming it was
+ bfd_error_system_call. */
perror_with_name (args);
+ /* FIXME: should be checking for errors from bfd_close (for one thing,
+ on error it does not free all the storage associated with the
+ bfd). */
old_cleanups = make_cleanup (bfd_close, abfd);
QUIT;
free (buffer);
write_pc (bfd_get_start_address (abfd));
- bfd_close (abfd);
+ if (!bfd_close (abfd))
+ warning ("cannot close \"%s\": %s",
+ args, bfd_errmsg (bfd_get_error ()));
discard_cleanups (old_cleanups);
}