From 0ceb87249d84811faf2931f9e512cf796b73fb26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Sun, 7 Jun 1998 21:44:46 +0200 Subject: [PATCH] Support for program_from_svalue() in f_values() and f_indices(). Rev: src/builtin_functions.c:1.113 --- src/builtin_functions.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/builtin_functions.c b/src/builtin_functions.c index a2e7ffd712..a17bf733b2 100644 --- a/src/builtin_functions.c +++ b/src/builtin_functions.c @@ -4,7 +4,7 @@ ||| See the files COPYING and DISCLAIMER for more information. \*/ #include "global.h" -RCSID("$Id: builtin_functions.c,v 1.112 1998/05/25 15:23:25 grubba Exp $"); +RCSID("$Id: builtin_functions.c,v 1.113 1998/06/07 19:44:46 grubba Exp $"); #include "interpret.h" #include "svalue.h" #include "pike_macros.h" @@ -822,6 +822,16 @@ void f_indices(INT32 args) a = program_indices(sp[-args].u.program); break; + case T_FUNCTION: + { + struct program *p = program_from_svalue(sp-args); + if (p) { + a = program_indices(p); + break; + } + } + /* FALL THROUGH */ + default: PIKE_ERROR("indices", "Bad argument 1.\n", sp, args); return; /* make apcc happy */ @@ -877,6 +887,16 @@ void f_values(INT32 args) a = program_values(sp[-args].u.program); break; + case T_FUNCTION: + { + struct program *p = program_from_svalue(sp - args); + if (p) { + a = program_values(p); + break; + } + } + /* FALL THROUGH */ + default: PIKE_ERROR("values", "Bad argument 1.\n", sp, args); return; /* make apcc happy */ -- GitLab