crypto/bn/bn_print.c:83: error: INTEGER_OVERFLOW_L2
  ([0, `a->top`] - 1):unsigned64.
Showing all 3 steps of the trace


crypto/bn/bn_print.c:68:1: <LHS trace>
66.   
67.   /* Must 'OPENSSL_free' the returned data */
68. > char *BN_bn2hex(const BIGNUM *a)
69.   	{
70.   	int i,j,v,z=0;

crypto/bn/bn_print.c:68:1: Parameter `a->top`
66.   
67.   /* Must 'OPENSSL_free' the returned data */
68. > char *BN_bn2hex(const BIGNUM *a)
69.   	{
70.   	int i,j,v,z=0;

crypto/bn/bn_print.c:83:7: Binary operation: ([0, a->top] - 1):unsigned64
81.   	if (a->neg) *(p++)='-';
82.   	if (BN_is_zero(a)) *(p++)='0';
83.   	for (i=a->top-1; i >=0; i--)
            ^
84.   		{
85.   		for (j=BN_BITS2-8; j >= 0; j-=8)

char *BN_bn2hex(const BIGNUM *a)
	{
	int i,j,v,z=0;
	char *buf;
	char *p;
	buf=OPENSSL_malloc(a->top*BN_BYTES*2+2);
	if (buf == NULL)
		{
		BNerr(BN_F_BN_BN2HEX,ERR_R_MALLOC_FAILURE);
		goto err;
		}
	p=buf;
	if (a->neg) *(p++)='-';
	if (BN_is_zero(a)) *(p++)='0';
	for (i=a->top-1; i >=0; i--)
		{
		for (j=BN_BITS2-8; j >= 0; j-=8)
			{
			v=((int)(a->d[i]>>(long)j))&0xff;
			if (z || (v != 0))
				{
				*(p++)=Hex[v>>4];
				*(p++)=Hex[v&0x0f];
				z=1;
				}
			}
		}
	*p='\0';
err:
	return(buf);
	}
["char *BN_bn2hex(const BIGNUM *a)\n\t{\n\tint i,j,v,z=0;\n\tchar *buf;\n\tchar *p;\n\tbuf=OPENSSL_malloc(a->top*BN_BYTES*2+2);\n\tif (buf == NULL)\n\t\t{\n\t\tBNerr(BN_F_BN_BN2HEX,ERR_R_MALLOC_FAILURE);\n\t\tgoto err;\n\t\t}\n\tp=buf;\n\tif (a->neg) *(p++)='-';\n\tif (BN_is_zero(a)) *(p++)='0';\n\tfor (i=a->top-1; i >=0; i--)\n\t\t{\n\t\tfor (j=BN_BITS2-8; j >= 0; j-=8)\n\t\t\t{\n\t\t\tv=((int)(a->d[i]>>(long)j))&0xff;\n\t\t\tif (z || (v != 0))\n\t\t\t\t{\n\t\t\t\t*(p++)=Hex[v>>4];\n\t\t\t\t*(p++)=Hex[v&0x0f];\n\t\t\t\tz=1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t*p='\\0';\nerr:\n\treturn(buf);\n\t}"]