INTEGER prohibited by 8.3.4


git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@730 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/libasn1compiler/asn1c_C.c b/libasn1compiler/asn1c_C.c
index c0ff5a1..5006a1b 100644
--- a/libasn1compiler/asn1c_C.c
+++ b/libasn1compiler/asn1c_C.c
@@ -116,11 +116,13 @@
 	v2e = alloca((el_count + 1) * sizeof(*v2e));
 
 	/*
-	 * For all ENUMERATED types and for those INTEGER types which
-	 * have identifiers, print out an enumeration table and a mapping
+	 * For all ENUMERATED types [and for those INTEGER types which
+	 * have identifiers -- prohibited by X.693:8.3.4],
+	 * print out an enumeration table and a mapping
 	 * between identifiers and associated values.
 	 */
-	if(expr->expr_type == ASN_BASIC_ENUMERATED || el_count) {
+	if(expr->expr_type == ASN_BASIC_ENUMERATED
+	|| (0 && el_count /* -- prohibited by X.693:8.3.4 */)) {
 		int eidx = 0;
 
 		REDIR(OT_DEPS);
@@ -561,8 +563,9 @@
 			? "SET" : "SEQUENCE");
 	if(memb->expr_type & ASN_CONSTR_MASK
 	|| ((memb->expr_type == ASN_BASIC_ENUMERATED
-		|| memb->expr_type == ASN_BASIC_INTEGER)
-	    && expr_elements_count(arg, memb))) {
+		|| (0 /* -- prohibited by X.693:8.3.4 */
+			&& memb->expr_type == ASN_BASIC_INTEGER))
+	    	&& expr_elements_count(arg, memb))) {
 		arg_t tmp;
 		asn1p_expr_t tmp_memb;
 		arg->embed++;
@@ -918,7 +921,8 @@
 	}
 
 	if((expr->expr_type == ASN_BASIC_ENUMERATED)
-	|| (expr->expr_type == ASN_BASIC_INTEGER
+	|| (0 /* -- prohibited by X.693:8.3.4 */
+		&& expr->expr_type == ASN_BASIC_INTEGER
 		&& expr_elements_count(arg, expr)))
 		etd_spec = ETD_HAS_SPECIFICS;
 	else
@@ -1561,7 +1565,8 @@
 	complex_contents =
 		(expr->expr_type & ASN_CONSTR_MASK)
 		|| expr->expr_type == ASN_BASIC_ENUMERATED
-		|| (expr->expr_type == ASN_BASIC_INTEGER
+		|| (0 /* -- prohibited by X.693:8.3.4 */
+			&& expr->expr_type == ASN_BASIC_INTEGER
 			&& expr_elements_count(arg, expr));
 	if(C99_MODE) OUT(".type = ");
 	if(complex_contents