Fix errors after enabling -Wpointer-arith
This commit is contained in:
parent
4e54c876a7
commit
49c47da804
|
@ -27,6 +27,7 @@
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
#include "mpconfig.h"
|
#include "mpconfig.h"
|
||||||
#include "nlr.h"
|
#include "nlr.h"
|
||||||
|
@ -292,7 +293,7 @@ STATIC mp_obj_t array_subscr(mp_obj_t self_in, mp_obj_t index_in, mp_obj_t value
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
res = array_new(o->typecode, slice.stop - slice.start);
|
res = array_new(o->typecode, slice.stop - slice.start);
|
||||||
memcpy(res->items, o->items + slice.start * sz, (slice.stop - slice.start) * sz);
|
memcpy(res->items, (uint8_t*)o->items + slice.start * sz, (slice.stop - slice.start) * sz);
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
#endif
|
#endif
|
||||||
|
@ -331,7 +332,7 @@ STATIC mp_int_t array_get_buffer(mp_obj_t o_in, mp_buffer_info_t *bufinfo, mp_ui
|
||||||
// read-only memoryview
|
// read-only memoryview
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
bufinfo->buf += (mp_uint_t)o->free * sz;
|
bufinfo->buf = (uint8_t*)bufinfo->buf + (mp_uint_t)o->free * sz;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -65,10 +65,10 @@ void *memcpy(void *dst, const void *src, size_t n) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void *memmove(void *dest, const void *src, size_t n) {
|
void *memmove(void *dest, const void *src, size_t n) {
|
||||||
if (src < dest && dest < src + n) {
|
if (src < dest && (uint8_t*)dest < (const uint8_t*)src + n) {
|
||||||
// need to copy backwards
|
// need to copy backwards
|
||||||
uint8_t *d = dest + n - 1;
|
uint8_t *d = (uint8_t*)dest + n - 1;
|
||||||
const uint8_t *s = src + n - 1;
|
const uint8_t *s = (const uint8_t*)src + n - 1;
|
||||||
for (; n > 0; n--) {
|
for (; n > 0; n--) {
|
||||||
*d-- = *s--;
|
*d-- = *s--;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue