utils: change _NM_UTILS_LOOKUP_DEFINE() to generate compiler warning about missing enum values

Don't implement a "default" case so that we get a compiler warning
about unused enum values.
This commit is contained in:
Thomas Haller
2016-02-01 14:02:39 +01:00
parent 2bf4960ec1
commit 572b60a203
3 changed files with 6 additions and 3 deletions

View File

@@ -260,20 +260,20 @@ const char *nm_utils_enum2str (const NMUtilsEnum2StrDesc *descs,
/*****************************************************************************/
#define NM_UTILS_LOOKUP_ITEM(v, n) (void) 0; case v: return (n); (void) 0
#define NM_UTILS_LOOKUP_ITEM(v, n) (void) 0; case v: return (n); (void) 0
#define NM_UTILS_LOOKUP_STR_ITEM(v, n) NM_UTILS_LOOKUP_ITEM(v, ""n"")
#define NM_UTILS_LOOKUP_ITEM_IGNORE(v) (void) 0; case v: break; (void) 0
#define _NM_UTILS_LOOKUP_DEFINE(scope, fcn_name, lookup_type, result_type, unknown_val, ...) \
scope result_type \
fcn_name (lookup_type val) \
{ \
switch (val) { \
default: \
return (unknown_val); \
(void) 0, \
__VA_ARGS__ \
(void) 0; \
}; \
return (unknown_val); \
}
#define NM_UTILS_LOOKUP_STR_DEFINE(fcn_name, lookup_type, unknown_val, ...) \