Index: src/pmc/fixedpmcarray.pmc =================================================================== --- src/pmc/fixedpmcarray.pmc (revision 42529) +++ src/pmc/fixedpmcarray.pmc (working copy) @@ -484,9 +484,10 @@ else { PMC *box = SELF.get_pmc_keyed_int(k); - /* RT #46675: autovivify an Array and insert it in SELF */ - if (!box) + if (!box) { box = pmc_new(INTERP, SELF.type()); + SELF.set_pmc_keyed_int(k, box); + } VTABLE_set_number_keyed(INTERP, box, nextkey, value); } @@ -572,9 +573,10 @@ else { PMC *box = SELF.get_pmc_keyed_int(k); - /* RT #46675: autovivify an Array and insert it in SELF */ - if (!box) + if (!box) { box = pmc_new(INTERP, SELF.type()); + VTABLE_set_pmc_keyed_int(INTERP, SELF, k, box); + } VTABLE_set_pmc_keyed(INTERP, box, nextkey, value); }