Author: jonathan
Date: Mon Apr 9 13:16:43 2007
New Revision: 18066
Modified:
trunk/src/inter_call.c
Log:
Fix to allow calling of non-PCCMETHOD methods using PCCINVOKE.
Modified: trunk/src/inter_call.c
==============================================================================
--- trunk/src/inter_call.c (original)
+++ trunk/src/inter_call.c Mon Apr 9 13:16:43 2007
@@ -59,7 +59,11 @@
int
Parrot_init_arg_nci(Interp *interp, struct call_state *st, const char *sig)
{
- Parrot_init_arg_op(interp, CONTEXT(interp->ctx), interp->current_args,
&st->src);
+ if (PMC_IS_NULL(interp->args_signature))
+ Parrot_init_arg_op(interp, CONTEXT(interp->ctx), interp->current_args,
&st->src);
+ else
+ Parrot_init_arg_indexes_and_sig_pmc(interp, CONTEXT(interp->ctx),
+ interp->current_args, interp->args_signature, &st->src);
Parrot_init_arg_sig(interp, CONTEXT(interp->ctx), sig, NULL, &st->dest);
return 1;
}