string type compatibility


git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@816 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/libasn1fix/asn1fix_value.c b/libasn1fix/asn1fix_value.c
index 161d9a3..18d8686 100644
--- a/libasn1fix/asn1fix_value.c
+++ b/libasn1fix/asn1fix_value.c
@@ -79,6 +79,11 @@
 			type_expr, val_type_expr);
 	if(ret == -1) {
 		switch(type_expr->expr_type) {
+		default:
+			if(!(type_expr->expr_type & ASN_STRING_MASK))
+				break;
+			/* Compatibility rules are not defined */
+			/* Fall through */
 		case ASN_BASIC_INTEGER:
 		case ASN_BASIC_ENUMERATED:
 			FATAL("Incompatible type of \"%s\" (%s) at line %d "
@@ -96,10 +101,8 @@
 			 * We can't deal with OIDs inheritance properly yet.
 			 */
 			return 0;
-		default:
-			break;
 		}
-		WARNING("Incompatible type of \"%s\" (%s) at line %d "
+		WARNING("Possibly incompatible type of \"%s\" (%s) at line %d "
 			"with \"%s\" (%s) at line %d",
 			type_expr->Identifier,
 				ASN_EXPR_TYPE2STR(type_expr->expr_type),