removed gcc-7 warnings
diff --git a/libasn1compiler/asn1c_C.c b/libasn1compiler/asn1c_C.c
index be04e9f..bebd413 100644
--- a/libasn1compiler/asn1c_C.c
+++ b/libasn1compiler/asn1c_C.c
@@ -2333,6 +2333,7 @@
switch(etype) {
case ASN_BASIC_BOOLEAN:
fits_long = 1;
+ /* Fall through */
case ASN_BASIC_INTEGER:
case ASN_BASIC_ENUMERATED:
if(expr->marker.default_value == NULL
@@ -3439,13 +3440,15 @@
&atag, AFT_IMAGINARY_ANY | AFT_CANON_CHOICE)))
return 1;
- if(WITH_MODULE_NAMESPACE(b->expr->module, expr_ns,
- asn1f_fetch_outmost_tag(
- arg->asn, expr_ns, b->expr->module, b->expr,
- &btag, AFT_IMAGINARY_ANY | AFT_CANON_CHOICE)))
+ if(WITH_MODULE_NAMESPACE(
+ b->expr->module, expr_ns,
+ asn1f_fetch_outmost_tag(arg->asn, expr_ns, b->expr->module, b->expr,
+ &btag,
+ AFT_IMAGINARY_ANY | AFT_CANON_CHOICE))) {
return -1;
+ }
- if(atag.tag_class < btag.tag_class)
+ if(atag.tag_class < btag.tag_class)
return -1;
if(atag.tag_class > btag.tag_class)
return 1;
diff --git a/libasn1compiler/asn1c_misc.c b/libasn1compiler/asn1c_misc.c
index c36f96f..8cfafc0 100644
--- a/libasn1compiler/asn1c_misc.c
+++ b/libasn1compiler/asn1c_misc.c
@@ -463,9 +463,11 @@
/* Special case for unsigned */
if(!(arg->flags & A1C_USE_WIDE_TYPES) && left.type == ARE_VALUE
- && left.value >= 0 && left.value <= 2147483647 && right.type == ARE_MAX)
+ && left.value >= 0 && left.value <= 2147483647
+ && right.type == ARE_MAX) {
return FL_FITS_UNSIGN;
- if(left.type == ARE_VALUE
+ }
+ if(left.type == ARE_VALUE
&& left.value >= 0
&& right.type == ARE_VALUE
&& right.value > 2147483647
diff --git a/libasn1compiler/asn1c_save.c b/libasn1compiler/asn1c_save.c
index 4bb192e..5fe1b37 100644
--- a/libasn1compiler/asn1c_save.c
+++ b/libasn1compiler/asn1c_save.c
@@ -711,8 +711,9 @@
return 0;
/* Parameterized types can't serve as PDU's without instantiation. */
- if(arg->expr->lhs_params)
+ if(arg->expr->lhs_params) {
return 0;
+ }
if((arg->flags & A1C_PDU_ALL)
|| ((arg->flags & A1C_PDU_AUTO) && !arg->expr->_type_referenced)