work in 128-bit integer values while compiling
diff --git a/libasn1fix/asn1fix_crange.c b/libasn1fix/asn1fix_crange.c
index 5b85464..fc61a97 100644
--- a/libasn1fix/asn1fix_crange.c
+++ b/libasn1fix/asn1fix_crange.c
@@ -157,7 +157,7 @@
 	case ARE_MIN:	strcpy(buf, "MIN"); break;
 	case ARE_MAX:	strcpy(buf, "MAX"); break;
 	case ARE_VALUE:
-		snprintf(buf, sizeof(buf), "%" PRIdASN, edge->value);
+		snprintf(buf, sizeof(buf), "%s", asn1p_itoa(edge->value));
         break;
     default:
         assert(!"edge->type");
@@ -258,9 +258,9 @@
 	switch(val->type) {
 	case ATV_INTEGER:
 		if(type != ACT_EL_RANGE && type != ACT_CT_SIZE) {
-			FATAL("Integer %" PRIdASN " value invalid "
+			FATAL("Integer %s value invalid "
 				"for %s constraint at line %d",
-				val->value.v_integer,
+				asn1p_itoa(val->value.v_integer),
 				asn1p_constraint_type2str(type), lineno);
 			return -1;
 		}