diff --git a/libasn1fix/asn1fix_misc.c b/libasn1fix/asn1fix_misc.c
index 9e8cc07..4af0fd8 100644
--- a/libasn1fix/asn1fix_misc.c
+++ b/libasn1fix/asn1fix_misc.c
@@ -236,15 +236,14 @@
  * Check that every child of a given expr has unique name or does not have any.
  */
 int
-asn1f_check_unique_expr(arg_t *arg,
-		int (*opt_compare)(asn1p_expr_t *a, asn1p_expr_t *b)) {
+asn1f_check_unique_expr(arg_t *arg) {
 	asn1p_expr_t *expr;
 	int rvalue = 0;
 
 	TQ_FOR(expr, &(arg->expr->members), next) {
 		if(expr->Identifier) {
 			int ret = asn1f_check_unique_expr_child(arg, expr,
-				opt_compare);
+				0, "identifier");
 			if(ret) rvalue = -1;
 		} else {
 			/*
@@ -263,9 +262,11 @@
  */
 int
 asn1f_check_unique_expr_child(arg_t *arg, asn1p_expr_t *child,
-		int (*opt_compare)(asn1p_expr_t *a, asn1p_expr_t *b)) {
+		int (*opt_compare)(asn1p_expr_t *a, asn1p_expr_t *b),
+		const char *opt_property_name) {
 	asn1p_expr_t *expr;
-	int rvalue = 0;
+
+	if(!opt_property_name) opt_property_name = "property";
 
 	assert(child);
 	assert(opt_compare || child->Identifier);
@@ -290,26 +291,20 @@
 		}
 
 		if(ret == 0) {
-			char *msg;
-			msg = opt_compare
-				?"Expressions clash"
-				:"Identifiers name clash";
-			FATAL("%s: "
+			FATAL("Clash detected: "
 				"\"%s\" at line %d has similar %s with "
 				"\"%s\" at line %d",
-				msg,
 				expr->Identifier,
 				expr->_lineno,
-				opt_compare?"property":"name",
+				opt_property_name,
 				child->Identifier,
 				child->_lineno
 			);
-
-			rvalue = -1;
+			return -1;
 		}
 	}
 
-	return rvalue;
+	return 0;
 }
 
 int
