[svn:parrot] r41816 - branches/pcc_reapply/src/call
bacek at svn.parrot.org
bacek at svn.parrot.org
Sun Oct 11 04:23:08 UTC 2009
Author: bacek
Date: Sun Oct 11 04:23:00 2009
New Revision: 41816
URL: https://trac.parrot.org/parrot/changeset/41816
Log:
Fix passing constant strings as named returns.
Modified:
branches/pcc_reapply/src/call/args.c
Modified: branches/pcc_reapply/src/call/args.c
==============================================================================
--- branches/pcc_reapply/src/call/args.c Sun Oct 11 04:00:47 2009 (r41815)
+++ branches/pcc_reapply/src/call/args.c Sun Oct 11 04:23:00 2009 (r41816)
@@ -734,7 +734,10 @@
case PARROT_ARG_STRING:
if (arg_flags & PARROT_ARG_NAME) {
PMC *name_string = pmc_new(interp, enum_class_String);
- VTABLE_set_string_native(interp, name_string, (CTX_REG_STR(ctx, raw_index)));
+ STRING * string_val = arg_flags & PARROT_ARG_CONSTANT
+ ? Parrot_pcc_get_string_constant(interp, ctx, raw_index)
+ : CTX_REG_STR(ctx, raw_index);
+ VTABLE_set_string_native(interp, name_string, string_val);
VTABLE_push_pmc(interp, returns, name_string);
}
else {
More information about the parrot-commits
mailing list