summaryrefslogtreecommitdiffstats
path: root/INSTALL
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-12-11 13:57:31 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2020-12-12 11:35:22 +0100
commitfcd9618ac84e04d363741419e67b5d618ebe6a81 (patch)
tree66ae994cfc773d414c8551f08a0baab21b10e507 /INSTALL
parentbsps/gicv3: Resolve build warnings on 64bit (diff)
downloadrtems-fcd9618ac84e04d363741419e67b5d618ebe6a81.tar.bz2
config: Fix invalid static assertions in C
Expressions in static assertions must be integral constant expressions. In integral constant expressions the use of address constant expressions is not allowed. In static initializers the address constant expressions are allowed. Introduce a new macro _CONFIGURE_ASSERT_NOT_NULL() which leads to a compile time error if the second parameter is NULL. It generates error messages like this if for example #define CONFIGURE_INIT_TASK_ENTRY_POINT NULL is provided by the application: cpukit/include/rtems/confdefs/inittask.h:51:26: error: size of unnamed array is negative 51 | ( _type ) sizeof( int[ ( _value ) != NULL ? 1 : -1 ] ) ) | ^ cpukit/include/rtems/confdefs/inittask.h:170:3: note: in expansion of macro '_CONFIGURE_ASSERT_NOT_NULL' 170 | _CONFIGURE_ASSERT_NOT_NULL( | ^~~~~~~~~~~~~~~~~~~~~~~~~~ This fix relates to CID 1470570 (PARSE_ERROR). Update #4181.
Diffstat (limited to 'INSTALL')
0 files changed, 0 insertions, 0 deletions