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)