--- cpukit/libblock/include/rtems/blkdev.h | 2 +- cpukit/libblock/include/rtems/ide_part_table.h | 2 +- cpukit/score/include/rtems/score/basedefs.h | 7 +++++++ 3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/cpukit/libblock/include/rtems/blkdev.h b/cpukit/libblock/include/rtems/blkdev.h index f934871..d17cadc 100644 --- a/cpukit/libblock/include/rtems/blkdev.h +++ b/cpukit/libblock/include/rtems/blkdev.h @@ -142,7 +142,7 @@ typedef struct rtems_blkdev_request { /** * List of scatter or gather buffers. */ - rtems_blkdev_sg_buffer bufs[0]; + rtems_blkdev_sg_buffer bufs[RTEMS_ZERO_LENGTH_ARRAY]; } rtems_blkdev_request; /** diff --git a/cpukit/libblock/include/rtems/ide_part_table.h b/cpukit/libblock/include/rtems/ide_part_table.h index 3b4b8a5..261135c 100644 --- a/cpukit/libblock/include/rtems/ide_part_table.h +++ b/cpukit/libblock/include/rtems/ide_part_table.h @@ -78,7 +78,7 @@ typedef struct rtems_sector_data_s { uint32_t sector_num; /* sector number on the device */ - uint8_t data[0]; /* raw sector data */ + uint8_t data[RTEMS_ZERO_LENGTH_ARRAY]; /* raw sector data */ } rtems_sector_data_t; diff --git a/cpukit/score/include/rtems/score/basedefs.h b/cpukit/score/include/rtems/score/basedefs.h index 2fc7caa..8f479fe 100644 --- a/cpukit/score/include/rtems/score/basedefs.h +++ b/cpukit/score/include/rtems/score/basedefs.h @@ -219,6 +219,13 @@ #define RTEMS_ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0])) +/* + * Zero-length arrays are valid in C99 as flexible array members. C++11 + * doesn't allow flexible array members. Use the GNU extension which is also + * supported by other compilers. + */ +#define RTEMS_ZERO_LENGTH_ARRAY 0 + #ifndef ASM #ifdef RTEMS_DEPRECATED_TYPES typedef bool boolean; -- 1.7.7 _______________________________________________ rtems-devel mailing list rtems-devel@rtems.org http://www.rtems.org/mailman/listinfo/rtems-devel