test/property_test.c:341: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `ossl_method_store_add`.
Showing all 12 steps of the trace


test/property_test.c:341:14: Call
339.           v[i] = 2 * i;
340.           BIO_snprintf(buf, sizeof(buf), "n=%d\n", i);
341.           if (!TEST_true(ossl_method_store_add(store, i, buf, "abc", NULL))
                    ^
342.                   || !TEST_true(ossl_method_store_cache_set(store, i, buf, v + i))
343.                   || !TEST_true(ossl_method_store_cache_set(store, i, "n=1234",

crypto/property/property.c:186:1: Parameter `store->algs->nelem`
  184.   }
  185.   
  186. > int ossl_method_store_add(OSSL_METHOD_STORE *store,
  187.                             int nid, const char *properties,
  188.                             void *method, void (*method_destruct)(void *))

test/property_test.c:341:14: Call
339.           v[i] = 2 * i;
340.           BIO_snprintf(buf, sizeof(buf), "n=%d\n", i);
341.           if (!TEST_true(ossl_method_store_add(store, i, buf, "abc", NULL))
                    ^
342.                   || !TEST_true(ossl_method_store_cache_set(store, i, buf, v + i))
343.                   || !TEST_true(ossl_method_store_cache_set(store, i, "n=1234",

crypto/property/property.c:186:1: Parameter `store->algs->nelem`
  184.   }
  185.   
  186. > int ossl_method_store_add(OSSL_METHOD_STORE *store,
  187.                             int nid, const char *properties,
  188.                             void *method, void (*method_destruct)(void *))

crypto/property/property.c:227:14: Call
  225.               goto err;
  226.           alg->nid = nid;
  227.           if (!ossl_method_store_insert(store, alg))
                      ^
  228.               goto err;
  229.       }

crypto/property/property.c:181:1: Parameter `store->algs->nelem`
    179.   }
    180.   
    181. > static int ossl_method_store_insert(OSSL_METHOD_STORE *store, ALGORITHM *alg)
    182.   {
    183.           return ossl_sa_ALGORITHM_set(store->algs, alg->nid, alg);

crypto/property/property.c:183:16: Call
    181.   static int ossl_method_store_insert(OSSL_METHOD_STORE *store, ALGORITHM *alg)
    182.   {
    183.           return ossl_sa_ALGORITHM_set(store->algs, alg->nid, alg);
                          ^
    184.   }
    185.   

crypto/property/property.c:65:1: Parameter `sa->nelem`
      63.   } IMPL_CACHE_FLUSH;
      64.   
      65. > DEFINE_SPARSE_ARRAY_OF(ALGORITHM);
      66.   
      67.   static void ossl_method_cache_flush(OSSL_METHOD_STORE *store, int nid);

crypto/property/property.c:65:1: Call
      63.   } IMPL_CACHE_FLUSH;
      64.   
      65. > DEFINE_SPARSE_ARRAY_OF(ALGORITHM);
      66.   
      67.   static void ossl_method_cache_flush(OSSL_METHOD_STORE *store, int nid);

crypto/sparse_array.c:181:1: <LHS trace>
179.   }
180.   
181. > int OPENSSL_SA_set(OPENSSL_SA *sa, size_t posn, void *val)
182.   {
183.       int i, level = 1;

crypto/sparse_array.c:181:1: Parameter `sa->nelem`
        179.   }
        180.   
        181. > int OPENSSL_SA_set(OPENSSL_SA *sa, size_t posn, void *val)
        182.   {
        183.       int i, level = 1;

crypto/sparse_array.c:213:9: Binary operation: ([0, +oo] - 1):unsigned64 by call to `ossl_method_store_add` 
        211.       p += posn & SA_BLOCK_MASK;
        212.       if (val == NULL && *p != NULL)
        213.           sa->nelem--;
                       ^
        214.       else if (val != NULL && *p == NULL)
        215.           sa->nelem++;
