1.1 --- a/templates/native/unicode.c Thu Mar 23 16:40:57 2017 +0100
1.2 +++ b/templates/native/unicode.c Thu Mar 23 23:36:32 2017 +0100
1.3 @@ -76,7 +76,7 @@
1.4 /* _data interpreted as string */
1.5 char *s = _data->strvalue;
1.6 /* _size interpreted as int */
1.7 - int size = _size->intvalue;
1.8 + int size = __TOINT(*_size);
1.9 unsigned int i, c = 0;
1.10
1.11 for (i = 0; i < size; i++)
1.12 @@ -94,7 +94,7 @@
1.13 /* _data interpreted as string */
1.14 char *s = _data->strvalue;
1.15 /* _size interpreted as int */
1.16 - int size = _size->intvalue;
1.17 + int size = __TOINT(*_size);
1.18 unsigned int i, c = 0, v;
1.19
1.20 for (i = 0; i < size; i++)
1.21 @@ -133,13 +133,13 @@
1.22 /* _data interpreted as string */
1.23 char *s = _data->strvalue, *sub;
1.24 /* _size interpreted as int */
1.25 - int ss = _size->intvalue;
1.26 - /* start.__data__ interpreted as int */
1.27 - int istart = __load_via_object(start->value, __data__).intvalue;
1.28 - /* end.__data__ interpreted as int */
1.29 - int iend = __load_via_object(end->value, __data__).intvalue;
1.30 - /* step.__data__ interpreted as int */
1.31 - int istep = __load_via_object(step->value, __data__).intvalue;
1.32 + int ss = __TOINT(*_size);
1.33 + /* start interpreted as int */
1.34 + int istart = __TOINT(*start);
1.35 + /* end interpreted as int */
1.36 + int iend = __TOINT(*end);
1.37 + /* step interpreted as int */
1.38 + int istep = __TOINT(*step);
1.39
1.40 /* Calculate the number of characters. */
1.41 size_t nchar = ((iend - istart - (istep > 0 ? 1 : -1)) / istep) + 1;
1.42 @@ -206,7 +206,7 @@
1.43 {
1.44 __attr * const value = &__args[1];
1.45 /* value interpreted as int */
1.46 - int i = value->intvalue;
1.47 + int i = __TOINT(*value);
1.48 unsigned int resultsize;
1.49 char *s;
1.50