guile: Add as_a_scm_t_subr

Building GDB in C++ mode on Fedora 20, the gdb/guile/ code shows ~280
errors like:

 src/gdb/guile/guile.c:515:1: error: invalid conversion from ‘scm_unused_struct* (*)(SCM, SCM) {aka scm_unused_struct* (*)(scm_unused_struct*, scm_unused_struct*)}’ to ‘scm_t_subr {aka void*}’ [-fpermissive]

This commit fixes them all.

gdb/ChangeLog:
2015-09-07  Pedro Alves  <palves@redhat.com>

	* guile/guile-internal.h (as_a_scm_t_subr): New.
	* guile/guile.c (misc_guile_functions): Use it.
	* guile/scm-arch.c (arch_functions): Use it.
	* guile/scm-block.c (block_functions, gdbscm_initialize_blocks):
	Use it.
	* guile/scm-breakpoint.c (breakpoint_functions): Use it.
	* guile/scm-cmd.c (command_functions): Use it.
	* guile/scm-disasm.c (disasm_functions): Use it.
	* guile/scm-exception.c (exception_functions)
	(private_exception_functions): Use it.
	* guile/scm-frame.c (frame_functions)
	* guile/scm-gsmob.c (gsmob_functions): Use it.
	* guile/scm-iterator.c (iterator_functions): Use it.
	* guile/scm-lazy-string.c (lazy_string_functions): Use it.
	* guile/scm-math.c (math_functions): Use it.
	* guile/scm-objfile.c (objfile_functions): Use it.
	* guile/scm-param.c (parameter_functions): Use it.
	* guile/scm-ports.c (port_functions, private_port_functions): Use
	it.
	* guile/scm-pretty-print.c (pretty_printer_functions): Use it.
	* guile/scm-progspace.c (pspace_functions): Use it.
	* guile/scm-string.c (string_functions): Use it.
	* guile/scm-symbol.c (symbol_functions): Use it.
	* guile/scm-symtab.c (symtab_functions): Use it.
	* guile/scm-type.c (type_functions, gdbscm_initialize_types): Use
	it.
	* guile/scm-value.c (value_functions): Use it.
This commit is contained in:
Pedro Alves
2015-09-07 19:34:31 +01:00
parent 3d4fde6974
commit 72e0248351
24 changed files with 401 additions and 280 deletions

View File

@@ -478,7 +478,7 @@ info_guile_command (char *args, int from_tty)
static const scheme_function misc_guile_functions[] =
{
{ "execute", 1, 0, 1, gdbscm_execute_gdb_command,
{ "execute", 1, 0, 1, as_a_scm_t_subr (gdbscm_execute_gdb_command),
"\
Execute the given GDB command.\n\
\n\
@@ -491,23 +491,24 @@ Execute the given GDB command.\n\
Returns: The result of the command if #:to-string is true.\n\
Otherwise returns unspecified." },
{ "data-directory", 0, 0, 0, gdbscm_data_directory,
{ "data-directory", 0, 0, 0, as_a_scm_t_subr (gdbscm_data_directory),
"\
Return the name of GDB's data directory." },
{ "guile-data-directory", 0, 0, 0, gdbscm_guile_data_directory,
{ "guile-data-directory", 0, 0, 0,
as_a_scm_t_subr (gdbscm_guile_data_directory),
"\
Return the name of the Guile directory within GDB's data directory." },
{ "gdb-version", 0, 0, 0, gdbscm_gdb_version,
{ "gdb-version", 0, 0, 0, as_a_scm_t_subr (gdbscm_gdb_version),
"\
Return GDB's version string." },
{ "host-config", 0, 0, 0, gdbscm_host_config,
{ "host-config", 0, 0, 0, as_a_scm_t_subr (gdbscm_host_config),
"\
Return the name of the host configuration." },
{ "target-config", 0, 0, 0, gdbscm_target_config,
{ "target-config", 0, 0, 0, as_a_scm_t_subr (gdbscm_target_config),
"\
Return the name of the target configuration." },