diff --git a/lib/asn1/gen.c b/lib/asn1/gen.c index c57b67a1f..a96e59619 100644 --- a/lib/asn1/gen.c +++ b/lib/asn1/gen.c @@ -846,10 +846,10 @@ define_type (int level, const char *name, const char *basename, Type *t, int typ fprintf(headerfile, "int64_t %s;\n", name); } else if (t->range->min >= 0 && t->range->max > UINT_MAX) { fprintf (headerfile, "uint64_t %s;\n", name); - } else if (t->range->min >= INT_MIN && t->range->max <= INT_MAX) { - fprintf (headerfile, "int %s;\n", name); } else if (t->range->min >= 0 && t->range->max <= UINT_MAX) { fprintf (headerfile, "unsigned int %s;\n", name); + } else if (t->range->min >= INT_MIN && t->range->max <= INT_MAX) { + fprintf (headerfile, "int %s;\n", name); } else errx(1, "%s: unsupported range %lld -> %lld", name, (long long)t->range->min, (long long)t->range->max);