@@ -311,13 +311,6 @@ def printCIDLSource(schemaFile):
#include "ovsdb-error.h"
#include "util.h"
-#ifdef __CHECKER__
-/* Sparse dislikes sizeof(bool) ("warning: expression using sizeof bool"). */
-enum { sizeof_bool = 1 };
-#else
-enum { sizeof_bool = sizeof(bool) };
-#endif
-
''' % schema.idlHeader
# Cast functions.
@@ -411,23 +404,11 @@ static void
valueSrc = "datum->values[i].%s" % type.value.type.to_string()
print " if (!row->n_%s) {" % (columnName)
- # Special case for boolean types. This is only here because
- # sparse does not like the "normal" case ("warning: expression
- # using sizeof bool").
- if type.key.type == ovs.db.types.BooleanType:
- sizeof = "sizeof_bool"
- else:
- sizeof = "sizeof *%s" % keyVar
- print " %s = xmalloc(%s * %s);" % (keyVar, nMax,
- sizeof)
+ print " %s = xmalloc(%s * sizeof *%s);" % (
+ keyVar, nMax, keyVar)
if valueVar:
- # Special case for boolean types (see above).
- if type.value.type == ovs.db.types.BooleanType:
- sizeof = " * sizeof_bool"
- else:
- sizeof = "sizeof *%s" % valueVar
- print " %s = xmalloc(%s * %s);" % (valueVar,
- nMax, sizeof)
+ print " %s = xmalloc(%s * sizeof *%s);" % (
+ valueVar, nMax, valueVar)
print " }"
print " %s[row->n_%s] = %s;" % (keyVar, columnName, keySrc)
if valueVar:
The "sparse" checker used to warn about sizeof(bool). These days, it does not warn (without -Wsizeof-bool), so remove this ugly special case. If you have a version of "sparse" that still warns by default, please upgrade to a version that includes commit 2667c2d4ab33 (sparse: Allow override of sizeof(bool) warning). Signed-off-by: Ben Pfaff <blp@ovn.org> --- ovsdb/ovsdb-idlc.in | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-)