removed unneeded check before free()
diff --git a/libasn1compiler/asn1c_C.c b/libasn1compiler/asn1c_C.c
index 144febe..b4cd736 100644
--- a/libasn1compiler/asn1c_C.c
+++ b/libasn1compiler/asn1c_C.c
@@ -1048,8 +1048,7 @@
 
 		extract = asn1p_expr_clone(extract, 0);
 		if(extract) {
-			if(extract->Identifier)
-				free(extract->Identifier);
+			free(extract->Identifier);
 			extract->Identifier = strdup(arg->expr->Identifier);
 			if(extract->Identifier == NULL) {
 				asn1p_expr_free(extract);
@@ -1707,7 +1706,7 @@
 	all_tags_count = asn1f_fetch_tags(arg->asn, expr->module, expr,
 		&all_tags, AFT_FULL_COLLECT);
 	if(all_tags_count < 0) {
-		if(tags) free(tags);
+		free(tags);
 		DEBUG("fail to fetch tags chain for %s", expr->Identifier);
 		return -1;
 	}
@@ -1756,8 +1755,8 @@
 			EMIT_TAGS_TABLE("_all", all_tags, all_tags_count);
 	}
 
-	if(tags) free(tags);
-	if(all_tags) free(all_tags);
+	free(tags);
+	free(all_tags);
 
 	*tags_count_r = tags_count;
 	*all_tags_count_r = all_tags_count;
diff --git a/libasn1compiler/asn1c_misc.c b/libasn1compiler/asn1c_misc.c
index 6888e73..0762850 100644
--- a/libasn1compiler/asn1c_misc.c
+++ b/libasn1compiler/asn1c_misc.c
@@ -78,7 +78,7 @@
 	 * Make sure we have this amount of storage.
 	 */
 	if(storage_size <= size) {
-		if(storage) free(storage);
+		free(storage);
 		storage = malloc(size + 1);
 		if(storage) {
 			storage_size = size;
diff --git a/libasn1parser/asn1p_expr.c b/libasn1parser/asn1p_expr.c
index 71c1636..b7a03ec 100644
--- a/libasn1parser/asn1p_expr.c
+++ b/libasn1parser/asn1p_expr.c
@@ -245,8 +245,7 @@
 			asn1p_expr_free(tm);
 		}
 
-		if(expr->Identifier)
-			free(expr->Identifier);
+		free(expr->Identifier);
 		if(expr->reference)
 			asn1p_ref_free(expr->reference);
 		if(expr->constraints)
diff --git a/libasn1parser/asn1p_module.c b/libasn1parser/asn1p_module.c
index d030da7..29cf683 100644
--- a/libasn1parser/asn1p_module.c
+++ b/libasn1parser/asn1p_module.c
@@ -27,8 +27,7 @@
 	if(mod) {
 		asn1p_expr_t *expr;
 
-		if(mod->ModuleName)
-			free(mod->ModuleName);
+		free(mod->ModuleName);
 
 		if(mod->module_oid)
 			asn1p_oid_free(mod->module_oid);
diff --git a/libasn1parser/asn1p_oid.c b/libasn1parser/asn1p_oid.c
index 7d1c1a5..80d41e2 100644
--- a/libasn1parser/asn1p_oid.c
+++ b/libasn1parser/asn1p_oid.c
@@ -50,7 +50,6 @@
 	if(oid) {
 		if(oid->arcs) {
 			while(oid->arcs_count--) {
-				if(oid->arcs[oid->arcs_count].name)
 				free(oid->arcs[oid->arcs_count].name);
 			}
 		}
@@ -75,8 +74,7 @@
 void
 asn1p_oid_arc_free(asn1p_oid_arc_t *arc) {
 	if(arc) {
-		if(arc->name)
-			free(arc->name);
+		free(arc->name);
 		free(arc);
 	}
 }
diff --git a/libasn1parser/asn1p_param.c b/libasn1parser/asn1p_param.c
index a48faed..6fd7f21 100644
--- a/libasn1parser/asn1p_param.c
+++ b/libasn1parser/asn1p_param.c
@@ -29,8 +29,7 @@
 			while(i--) {
 				if(pl->params[i].governor)
 					asn1p_ref_free(pl->params[i].governor);
-				if(pl->params[i].argument)
-					free(pl->params[i].argument);
+				free(pl->params[i].argument);
 				pl->params[i].governor = 0;
 				pl->params[i].argument = 0;
 			}
diff --git a/libasn1parser/asn1p_ref.c b/libasn1parser/asn1p_ref.c
index af6f6bb..79e32aa 100644
--- a/libasn1parser/asn1p_ref.c
+++ b/libasn1parser/asn1p_ref.c
@@ -27,7 +27,6 @@
 		if(ref->components) {
 			int i = ref->comp_count;
 			while(i--) {
-				if(ref->components[i].name)
 				free(ref->components[i].name);
 				ref->components[i].name = 0;
 			}
diff --git a/libasn1parser/asn1p_xports.c b/libasn1parser/asn1p_xports.c
index abe1232..594a60e 100644
--- a/libasn1parser/asn1p_xports.c
+++ b/libasn1parser/asn1p_xports.c
@@ -25,8 +25,7 @@
 void
 asn1p_xports_free(asn1p_xports_t *xp) {
 	if(xp) {
-		if(xp->fromModuleName)
-			free(xp->fromModuleName);
+		free(xp->fromModuleName);
 		if(xp->identifier.oid)
 			asn1p_oid_free(xp->identifier.oid);
 		free(xp);