summaryrefslogtreecommitdiff
path: root/libguile/dynl.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2010-04-02 00:34:49 +0200
committerAndy Wingo <wingo@pobox.com>2010-04-02 00:34:49 +0200
commit43cd9cec2320b0fad4e04410226b319918a57f35 (patch)
tree6eb55653ed593130217b2cfc564e28d1446222d0 /libguile/dynl.c
parent726b8ba3fd5de26d5eb8c6567cc0b15bc1a7193e (diff)
downloadguile-43cd9cec2320b0fad4e04410226b319918a57f35.tar.gz
deprecate dynamic-args-call, and update docs some more
* libguile/deprecated.h (scm_dynamic_args_call): Deprecate. * libguile/deprecated.c: * libguile/dynl.h: * libguile/dynl.c: * doc/ref/api-foreign.texi: More doc updates.
Diffstat (limited to 'libguile/dynl.c')
-rw-r--r--libguile/dynl.c35
1 files changed, 0 insertions, 35 deletions
diff --git a/libguile/dynl.c b/libguile/dynl.c
index a204e93d7..449acc0db 100644
--- a/libguile/dynl.c
+++ b/libguile/dynl.c
@@ -333,41 +333,6 @@ SCM_DEFINE (scm_dynamic_call, "dynamic-call", 2, 0, 0,
}
#undef FUNC_NAME
-SCM_DEFINE (scm_dynamic_args_call, "dynamic-args-call", 3, 0, 0,
- (SCM func, SCM dobj, SCM args),
- "Call the C function indicated by @var{func} and @var{dobj},\n"
- "just like @code{dynamic-call}, but pass it some arguments and\n"
- "return its return value. The C function is expected to take\n"
- "two arguments and return an @code{int}, just like @code{main}:\n"
- "@smallexample\n"
- "int c_func (int argc, char **argv);\n"
- "@end smallexample\n\n"
- "The parameter @var{args} must be a list of strings and is\n"
- "converted into an array of @code{char *}. The array is passed\n"
- "in @var{argv} and its size in @var{argc}. The return value is\n"
- "converted to a Scheme number and returned from the call to\n"
- "@code{dynamic-args-call}.")
-#define FUNC_NAME s_scm_dynamic_args_call
-{
- int (*fptr) (int argc, char **argv);
- int result, argc;
- char **argv;
-
- if (scm_is_string (func))
- func = scm_dynamic_func (func, dobj);
- SCM_VALIDATE_FOREIGN_TYPED (SCM_ARG1, func, VOID);
-
- fptr = SCM_FOREIGN_POINTER (func, void);
-
- argv = scm_i_allocate_string_pointers (args);
- for (argc = 0; argv[argc]; argc++)
- ;
- result = (*fptr) (argc, argv);
-
- return scm_from_int (result);
-}
-#undef FUNC_NAME
-
void
scm_init_dynamic_linking ()
{