1.1 --- a/templates/native/list.c Sun Nov 14 00:50:17 2021 +0100
1.2 +++ b/templates/native/list.c Sun Nov 28 02:03:21 2021 +0100
1.3 @@ -56,7 +56,7 @@
1.4
1.5 /* Replace the __data__ attribute if appropriate. */
1.6 if (newdata != data)
1.7 - __store_via_object(__VALUE(self), __data__, ((__attr) {.seqvalue=newdata}));
1.8 + __store_via_object_internal(__VALUE(self), __data__, ((__attr) {.seqvalue=newdata}));
1.9 return __builtins___none_None;
1.10 }
1.11
1.12 @@ -79,12 +79,16 @@
1.13
1.14 /* Copy the elements from the other list and increment the list size. */
1.15 for (i = size, j = 0; j < other_size; i++, j++)
1.16 - newdata->attrs[i] = other_data->attrs[j];
1.17 + {
1.18 + newdata->attrs[i] = __RAWVALUE(0);
1.19 + __store_target(&newdata->attrs[i], other_data->attrs[j]);
1.20 + }
1.21 +
1.22 newdata->size = n;
1.23
1.24 /* Replace the __data__ attribute if appropriate. */
1.25 if (newdata != data)
1.26 - __store_via_object(__VALUE(self), __data__, ((__attr) {.seqvalue=newdata}));
1.27 + __store_via_object_internal(__VALUE(self), __data__, ((__attr) {.seqvalue=newdata}));
1.28 return __builtins___none_None;
1.29 }
1.30
1.31 @@ -120,7 +124,7 @@
1.32 __int i = __TOINT(index);
1.33
1.34 /* Set the element. */
1.35 - elements[i] = value;
1.36 + __store_target(&elements[i], value);
1.37 return __builtins___none_None;
1.38 }
1.39