From 06f720496c57fe4c603859f192752112087586ef Mon Sep 17 00:00:00 2001 From: Niki Roo Date: Sun, 27 Feb 2022 14:06:29 +0100 Subject: [PATCH] clear spurious warnings + cpp compat --- src/utils/array.c | 9 ++++++--- src/utils/array.h | 8 ++++++++ src/utils/desktop.h | 9 +++++++++ src/utils/timing.h | 9 +++++++++ src/utils/utils.h | 9 +++++++++ 5 files changed, 41 insertions(+), 3 deletions(-) diff --git a/src/utils/array.c b/src/utils/array.c index 77c75f8..084c325 100644 --- a/src/utils/array.c +++ b/src/utils/array.c @@ -199,7 +199,8 @@ int array_addn(array *me, void *data, size_t n) { } void *array_get_ptr(array *me, size_t i) { - return me->data + (i * me->elem_size); + // cast to (char *) because we want 'byte' arithmetic + return (void *)(((char *)me->data) + (i * me->elem_size)); } void array_get(array *me, void *target, size_t i) { @@ -207,7 +208,8 @@ void array_get(array *me, void *target, size_t i) { } void array_getn(array *me, void *target, size_t i, size_t n) { - memcpy(target, me->data + (i * me->elem_size), n * me->elem_size); + // cast to (char *) because we want 'byte' arithmetic + memcpy(target, ((char *)(me->data)) + (i * me->elem_size), n * me->elem_size); } int array_set(array *me, size_t i, void *data) { @@ -222,7 +224,8 @@ int array_setn(array *me, size_t i, void *data, size_t n) { if (!array_assure(me, i + n)) return 0; - memcpy(me->data + (i * me->elem_size), data, n * me->elem_size); + // cast to (char *) because we want 'byte' arithmetic + memcpy(((char *)(me->data)) + (i * me->elem_size), data, n * me->elem_size); if ((i + n) > me->count) me->count = i + n; return 1; diff --git a/src/utils/array.h b/src/utils/array.h index 795707b..db9952a 100644 --- a/src/utils/array.h +++ b/src/utils/array.h @@ -61,6 +61,10 @@ #ifndef ARRAY_H #define ARRAY_H +#ifdef __cplusplus +extern "C" { +#endif + #include #include @@ -368,3 +372,7 @@ void array_print_fmt(array *me, #endif /* ARRAY_H */ +#ifdef __cplusplus +} +#endif + diff --git a/src/utils/desktop.h b/src/utils/desktop.h index 059bb99..d55cf84 100644 --- a/src/utils/desktop.h +++ b/src/utils/desktop.h @@ -20,6 +20,10 @@ #ifndef DESKTOP_H #define DESKTOP_H +#ifdef __cplusplus +extern "C" { +#endif + #include #include "array.h" @@ -46,3 +50,8 @@ desktop *desktop_find_id(array *children, int menu_id); char *desktop_find_icon(const char basename[], int icon_size); #endif /* DESKTOP_H */ + +#ifdef __cplusplus +} +#endif + diff --git a/src/utils/timing.h b/src/utils/timing.h index 41ef029..024871c 100644 --- a/src/utils/timing.h +++ b/src/utils/timing.h @@ -30,6 +30,10 @@ #ifndef TIMING_H #define TIMING_H +#ifdef __cplusplus +extern "C" { +#endif + #include #define START struct timeval TIMING_start, TIMING_stop; \ @@ -45,3 +49,8 @@ gettimeofday(&TIMING_start, NULL); #endif // TIMING_H + +#ifdef __cplusplus +} +#endif + diff --git a/src/utils/utils.h b/src/utils/utils.h index 09be644..a4a3376 100644 --- a/src/utils/utils.h +++ b/src/utils/utils.h @@ -27,6 +27,10 @@ #ifndef UTILS_H #define UTILS_H +#ifdef __cplusplus +extern "C" { +#endif + #include "array.h" #include "desktop.h" #include "print.h" @@ -42,3 +46,8 @@ char *utils_strdup(const char *source); #endif // UTILS_H + +#ifdef __cplusplus +} +#endif + -- 2.27.0