aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--symbol.c6
-rw-r--r--validation/bitfield-sizes.c1
2 files changed, 4 insertions, 3 deletions
diff --git a/symbol.c b/symbol.c
index 6c1fb2a5..40e50874 100644
--- a/symbol.c
+++ b/symbol.c
@@ -258,8 +258,10 @@ static struct symbol *examine_bitfield_type(struct symbol *sym)
if (!base_type)
return sym;
- if (sym->bit_size > base_type->bit_size)
- warning(sym->pos, "impossible field-width, %d, for this type", sym->bit_size);
+ if (sym->bit_size > base_type->bit_size) {
+ sparse_error(sym->pos, "impossible field-width, %d, for this type", sym->bit_size);
+ sym->bit_size = -1;
+ }
alignment = base_type->ctype.alignment;
if (!sym->ctype.alignment)
diff --git a/validation/bitfield-sizes.c b/validation/bitfield-sizes.c
index e30a3e4c..c43bb0a4 100644
--- a/validation/bitfield-sizes.c
+++ b/validation/bitfield-sizes.c
@@ -19,7 +19,6 @@ static struct b b;
/*
* check-name: bitfield-sizes
* check-command: sparse -m64 $file
- * check-known-to-fail
*
* check-error-start
bitfield-sizes.c:12:18: error: invalid bitfield width, -1.