summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2022-08-30 07:06:14 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-08-31 13:20:49 +0200
commit1be6dc18d33bc026f64e8244c66792c30b88b130 (patch)
tree567377b6e56f26bba1398a623e708fa99a6c9bf7 /cpukit
parentconfig: Include <rtems/posix/timer.h> on demand (diff)
downloadrtems-1be6dc18d33bc026f64e8244c66792c30b88b130.tar.bz2
libtest: Fix warnings without a pragma
It seems that recent GCC versions expect that functions with a "const type *" parameter will read from the referenced location. Update #4662.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/include/rtems/test.h23
-rw-r--r--cpukit/libtest/t-test-checks.c12
2 files changed, 14 insertions, 21 deletions
diff --git a/cpukit/include/rtems/test.h b/cpukit/include/rtems/test.h
index e0823394d1..aa6b4f88b2 100644
--- a/cpukit/include/rtems/test.h
+++ b/cpukit/include/rtems/test.h
@@ -187,50 +187,43 @@ extern const T_check_context T_special;
T_flags_true(flags, \
(a) != (T_VA_ARGS_FIRST(__VA_ARGS__)) T_VA_ARGS_MORE(__VA_ARGS__))
-void T_check_eq_ptr(const T_check_context_msg *, const void *, const void *);
+void T_check_eq_ptr(const T_check_context_msg *, uintptr_t, uintptr_t);
#define T_flags_eq_ptr(a, e, flags, sa, se) \
{ \
static const T_check_context_msg T_check_instance = { \
{ T_FILE_NAME, __LINE__, (flags) | T_CHECK_FMT }, \
sa " == " se }; \
- T_check_eq_ptr(&T_check_instance, a, e); \
+ T_check_eq_ptr(&T_check_instance, (uintptr_t)a, (uintptr_t)e); \
}
-void T_check_ne_ptr(const T_check_context_msg *, const void *, const void *);
+void T_check_ne_ptr(const T_check_context_msg *, uintptr_t, uintptr_t);
#define T_flags_ne_ptr(a, e, flags, sa, se) \
{ \
static const T_check_context_msg T_check_instance = { \
{ T_FILE_NAME, __LINE__, (flags) | T_CHECK_FMT }, \
sa " != " se }; \
- T_check_ne_ptr(&T_check_instance, a, e); \
+ T_check_ne_ptr(&T_check_instance, (uintptr_t)a, (uintptr_t)e); \
}
-void T_check_null(const T_check_context_msg *, const void *);
+void T_check_null(const T_check_context_msg *, uintptr_t);
#define T_flags_null(a, flags, sa) \
{ \
static const T_check_context_msg T_check_instance = { \
{ T_FILE_NAME, __LINE__, (flags) | T_CHECK_FMT }, sa }; \
- T_check_null(&T_check_instance, a); \
+ T_check_null(&T_check_instance, (uintptr_t)a); \
}
-void T_check_not_null(const T_check_context_msg *, const void *);
+void T_check_not_null(const T_check_context_msg *, uintptr_t);
-/*
- * This was added to address the following warning.
- * warning: 'a' may be used uninitialized
- */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
#define T_flags_not_null(a, flags, sa) \
{ \
static const T_check_context_msg T_check_instance = { \
{ T_FILE_NAME, __LINE__, (flags) | T_CHECK_FMT }, sa }; \
- T_check_not_null(&T_check_instance, a); \
+ T_check_not_null(&T_check_instance, (uintptr_t)a); \
}
-#pragma GCC diagnostic pop
void T_check_eq_mem(const T_check_context_msg *, const void *, const void *,
size_t);
diff --git a/cpukit/libtest/t-test-checks.c b/cpukit/libtest/t-test-checks.c
index c86596521b..1a278b55ec 100644
--- a/cpukit/libtest/t-test-checks.c
+++ b/cpukit/libtest/t-test-checks.c
@@ -30,27 +30,27 @@
#include <inttypes.h>
void
-T_check_eq_ptr(const T_check_context_msg *t, const void *a, const void *e)
+T_check_eq_ptr(const T_check_context_msg *t, uintptr_t a, uintptr_t e)
{
T_check(&t->base, a == e, "%s", t->msg);
}
void
-T_check_ne_ptr(const T_check_context_msg *t, const void *a, const void *e)
+T_check_ne_ptr(const T_check_context_msg *t, uintptr_t a, uintptr_t e)
{
T_check(&t->base, a != e, "%s", t->msg);
}
void
-T_check_null(const T_check_context_msg *t, const void *a)
+T_check_null(const T_check_context_msg *t, uintptr_t a)
{
- T_check(&t->base, a == NULL, "%s == NULL", t->msg);
+ T_check(&t->base, a == 0, "%s == NULL", t->msg);
}
void
-T_check_not_null(const T_check_context_msg *t, const void *a)
+T_check_not_null(const T_check_context_msg *t, uintptr_t a)
{
- T_check(&t->base, a != NULL, "%s != NULL", t->msg);
+ T_check(&t->base, a != 0, "%s != NULL", t->msg);
}
void