[rtems commit] score: Fix undefined behaviour
Sebastian Huber
sebh at rtems.org
Thu Aug 18 05:29:01 UTC 2016
Module: rtems
Branch: master
Commit: 9c42752caca6c5136854b499e5e14d2891e0c195
Changeset: http://git.rtems.org/rtems/commit/?id=9c42752caca6c5136854b499e5e14d2891e0c195
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Wed Aug 17 07:33:14 2016 +0200
score: Fix undefined behaviour
Cast POSIX error codes to unsigned int to avoid undefined behaviour in
case of PTHREAD_BARRIER_SERIAL_THREAD which is -1.
---
cpukit/score/include/rtems/score/status.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpukit/score/include/rtems/score/status.h b/cpukit/score/include/rtems/score/status.h
index a4b2de9..453bf11 100644
--- a/cpukit/score/include/rtems/score/status.h
+++ b/cpukit/score/include/rtems/score/status.h
@@ -53,7 +53,7 @@ typedef enum {
*/
#if defined(RTEMS_POSIX_API)
#define STATUS_BUILD( classic_status, posix_status ) \
- ( ( ( posix_status ) << 8 ) | ( classic_status ) )
+ ( ( ( (unsigned int) ( posix_status ) ) << 8 ) | ( classic_status ) )
#else
#define STATUS_BUILD( classic_status, posix_status ) \
( classic_status )
More information about the vc
mailing list