crypto/bn/bn_recp.c:197: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `BN_usub`.
Showing all 9 steps of the trace


crypto/bn/bn_recp.c:185:7: Call
183.   
184.   	if (!BN_mul(b,&(recp->N),d,ctx)) goto err;
185.   	if (!BN_usub(r,m,b)) goto err;
             ^
186.   	r->neg=0;
187.   

crypto/bn/bn_add.c:166:1: Parameter `*r->d`
  164.   
  165.   /* unsigned subtraction of b from a, a must be larger than b. */
  166. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
  167.   	{
  168.   	int max,min,dif;

crypto/bn/bn_recp.c:190:9: Call
188.   #if 1
189.   	j=0;
190.   	while (BN_ucmp(r,&(recp->N)) >= 0)
               ^
191.   		{
192.   		if (j++ > 2)

crypto/bn/bn_lib.c:718:1: Parameter `*a->d`
  716.   	}
  717.   
  718. > int BN_ucmp(const BIGNUM *a, const BIGNUM *b)
  719.   	{
  720.   	int i;

crypto/bn/bn_recp.c:197:8: Call
195.   			goto err;
196.   			}
197.   		if (!BN_usub(r,r,&(recp->N))) goto err;
              ^
198.   		if (!BN_add_word(d,1)) goto err;
199.   		}

crypto/bn/bn_add.c:166:1: <LHS trace>
164.   
165.   /* unsigned subtraction of b from a, a must be larger than b. */
166. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
167.   	{
168.   	int max,min,dif;

crypto/bn/bn_add.c:166:1: Parameter `*a->d`
  164.   
  165.   /* unsigned subtraction of b from a, a must be larger than b. */
  166. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
  167.   	{
  168.   	int max,min,dif;

crypto/bn/bn_add.c:229:4: Assignment
  227.   			{
  228.   			dif--;
  229.   			t1 = *(ap++);
            ^
  230.   			t2 = (t1-1)&BN_MASK2;
  231.   			*(rp++) = t2;

crypto/bn/bn_add.c:230:4: Binary operation: ([0, +oo] - 1):unsigned64 by call to `BN_usub` 
  228.   			dif--;
  229.   			t1 = *(ap++);
  230.   			t2 = (t1-1)&BN_MASK2;
            ^
  231.   			*(rp++) = t2;
  232.   			if (t1)
