mirror of
https://github.com/Zygo/bees.git
synced 2025-05-17 05:15:45 +02:00
ntoa: fix comment disparaging gcc for not implementing C99 compound literals in C++
C99's "{ 0 }" notation for filling in a struct with all zeros was not included in the C++11 standard, so gcc doesn't implement it and neither does clang. gcc does (did?) have issues with warnings on the same code in C99, complaining about uninitialized struct members when "{0}" explicitly initializes every member to a zero value. These issues don't apply in the C++ code where NTOA_TABLE_ENTRY_END is used. Signed-off-by: Zygo Blaxell <bees@furryterror.org>
This commit is contained in:
parent
f8a8704135
commit
243480b515
@ -22,7 +22,7 @@ namespace crucible {
|
||||
// Enumerations (entire value matches all bits)
|
||||
#define NTOA_TABLE_ENTRY_ENUM(x) { .n = (x), .mask = ~0UL, .a = (#x) }
|
||||
|
||||
// End of table (sorry, gcc doesn't implement this)
|
||||
// End of table (sorry, C++ didn't get C99's compound literals, so we have to write out all the member names)
|
||||
#define NTOA_TABLE_ENTRY_END() { .n = 0, .mask = 0, .a = nullptr }
|
||||
|
||||
#endif // CRUCIBLE_NTOA_H
|
||||
|
Loading…
x
Reference in New Issue
Block a user