crypto/bn/bn_mod.c:46: error: INTEGER_OVERFLOW_L2
  ([-`*m->d`, +oo] - 1):unsigned64 by call to `BN_usub`.
Showing all 7 steps of the trace


crypto/bn/bn_mod.c:43:10: Call
41.                        const BIGNUM *m)
42.   {
43.       if (!BN_uadd(r, a, b))
               ^
44.           return 0;
45.       if (BN_ucmp(r, m) >= 0)

crypto/bn/bn_add.c:103:13: Assignment
  101.           if (carry) {
  102.               /* carry != 0 => dif == 0 */
  103.               *rp = 1;
                     ^
  104.               r->top++;
  105.           }

crypto/bn/bn_mod.c:46:16: Call
44.           return 0;
45.       if (BN_ucmp(r, m) >= 0)
46.           return BN_usub(r, r, m);
                     ^
47.       return 1;
48.   }

crypto/bn/bn_add.c:117:1: <LHS trace>
115.   
116.   /* unsigned subtraction of b from a, a must be larger than b. */
117. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
118.   {
119.       int max, min, dif;

crypto/bn/bn_add.c:117:1: Parameter `*a->d`
  115.   
  116.   /* unsigned subtraction of b from a, a must be larger than b. */
  117. > int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b)
  118.   {
  119.       int max, min, dif;

crypto/bn/bn_add.c:146:9: Assignment
  144.       carry = 0;
  145.       for (i = min; i != 0; i--) {
  146.           t1 = *(ap++);
                 ^
  147.           t2 = *(bp++);
  148.           if (carry) {

crypto/bn/bn_add.c:150:13: Binary operation: ([-*m->d, +oo] - 1):unsigned64 by call to `BN_usub` 
  148.           if (carry) {
  149.               carry = (t1 <= t2);
  150.               t1 = (t1 - t2 - 1) & BN_MASK2;
                     ^
  151.           } else {
  152.               carry = (t1 < t2);
