force use variable
diff --git a/libasn1compiler/asn1c_constraint.c b/libasn1compiler/asn1c_constraint.c
index 6b23d5c..52874b3 100644
--- a/libasn1compiler/asn1c_constraint.c
+++ b/libasn1compiler/asn1c_constraint.c
@@ -492,8 +492,16 @@
if(range) {
OUT("if(!(");
- emit_range_comparison_code(arg, range, "cv", 0, natural_stop);
- OUT(")) return -1;\n");
+ int produced_something =
+ emit_range_comparison_code(arg, range, "cv", 0, natural_stop);
+ if(produced_something) {
+ OUT(")) return -1;\n");
+ } else {
+ OUT(")) {\n");
+ OUT("\t(void)cv; /* Unused variable */\n");
+ OUT("\treturn -1;\n");
+ OUT("}\n");
+ }
} else {
OUT("if(!table[cv]) return -1;\n");
}