Skip to content
Browse files

Multi-cache should decontainerize.

  • Loading branch information...
1 parent 079592c commit 6c4dc29615ae0c768269f5b5f923b252486d6baa @jnthn jnthn committed Mar 13, 2013
Showing with 2 additions and 2 deletions.
  1. +2 −2 src/guts/multi_dispatch.c
View
4 src/guts/multi_dispatch.c
@@ -35,7 +35,7 @@ PMC * find_in_cache(PARROT_INTERP, NQP_md_cache *cache, PMC *capture, INTVAL num
return NULL;
for (i = 0; i < num_args; i++) {
if (pc_positionals[i].type == BIND_VAL_OBJ) {
- PMC *arg = pc_positionals[i].u.p;
+ PMC *arg = decontainerize(interp, pc_positionals[i].u.p);
if (arg->vtable->base_type != smo_id)
return NULL;
arg_tup[i] = STABLE(arg)->type_cache_id | (IS_CONCRETE(arg) ? 1 : 0);
@@ -102,7 +102,7 @@ void add_to_cache(PARROT_INTERP, NQP_md_cache *cache, PMC *capture, INTVAL num_a
return;
for (i = 0; i < num_args; i++) {
if (pc_positionals[i].type == BIND_VAL_OBJ) {
- PMC *arg = pc_positionals[i].u.p;
+ PMC *arg = decontainerize(interp, pc_positionals[i].u.p);
if (arg->vtable->base_type != smo_id)
return;
arg_tup[i] = STABLE(arg)->type_cache_id | (IS_CONCRETE(arg) ? 1 : 0);

0 comments on commit 6c4dc29

Please sign in to comment.
Something went wrong with that request. Please try again.