diff --git a/libguile/feature.c b/libguile/feature.c index 5bf986fc1..f147b8d26 100644 --- a/libguile/feature.c +++ b/libguile/feature.c @@ -62,14 +62,24 @@ scm_add_feature(str) - SCM_PROC(s_program_arguments, "program-arguments", 0, 0, 0, scm_program_arguments); + SCM scm_program_arguments () { return scm_progargs; } +/* Set the value returned by program-arguments, given a normal + argc/argv array. */ +void +scm_set_program_arguments (argc, argv) + int argc; + char **argv; +{ + scm_progargs = scm_makfromstrs (argc, argv); +} + diff --git a/libguile/feature.h b/libguile/feature.h index 5371d3718..64a42b8ad 100644 --- a/libguile/feature.h +++ b/libguile/feature.h @@ -48,6 +48,7 @@ extern void scm_add_feature SCM_P((char* str)); extern SCM scm_program_arguments SCM_P((void)); +extern void scm_set_program_arguments SCM_P ((int argc, char **argv)); extern void scm_init_feature SCM_P((void)); #endif /* FEATUREH */