[svn:parrot] r40701 - branches/pcc_arg_unify/src/call
tene at svn.parrot.org
tene at svn.parrot.org
Sat Aug 22 04:21:05 UTC 2009
Author: tene
Date: Sat Aug 22 04:21:04 2009
New Revision: 40701
URL: https://trac.parrot.org/parrot/changeset/40701
Log:
[pcc] Use HLL mappings in return argument autoboxing
Modified:
branches/pcc_arg_unify/src/call/pcc.c
Modified: branches/pcc_arg_unify/src/call/pcc.c
==============================================================================
--- branches/pcc_arg_unify/src/call/pcc.c Sat Aug 22 04:17:18 2009 (r40700)
+++ branches/pcc_arg_unify/src/call/pcc.c Sat Aug 22 04:21:04 2009 (r40701)
@@ -1361,7 +1361,7 @@
switch (PARROT_ARG_TYPE_MASK_MASK(return_flags)) {
case PARROT_ARG_INTVAL:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_Integer));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_Integer)));
}
if (constant)
VTABLE_set_integer_native(interp, result_item, raw_index);
@@ -1371,7 +1371,7 @@
break;
case PARROT_ARG_FLOATVAL:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_Float));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_Float)));
}
if (constant)
VTABLE_set_number_native(interp, result_item,
@@ -1382,7 +1382,7 @@
break;
case PARROT_ARG_STRING:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_String));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_String)));
}
if (constant)
VTABLE_set_string_native(interp, result_item, Parrot_str_new_COW(interp,
@@ -1486,21 +1486,21 @@
switch (PARROT_ARG_TYPE_MASK_MASK(return_flags)) {
case PARROT_ARG_INTVAL:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_Integer));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_Integer)));
}
VTABLE_set_integer_native(interp, result_item, va_arg(args, INTVAL));
return_list_index++;
break;
case PARROT_ARG_FLOATVAL:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_Float));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_Float)));
}
VTABLE_set_number_native(interp, result_item, va_arg(args, FLOATVAL));
return_list_index++;
break;
case PARROT_ARG_STRING:
if (Parrot_str_equal(interp, item_sig, CONST_STRING(interp, "P"))) {
- VTABLE_set_pmc(interp, result_item, pmc_new(interp, enum_class_String));
+ VTABLE_set_pmc(interp, result_item, pmc_new(interp, Parrot_get_ctx_HLL_type(interp, enum_class_String)));
}
VTABLE_set_string_native(interp, result_item,
Parrot_str_new_COW(interp, va_arg(args, STRING *)));
More information about the parrot-commits
mailing list