crypto/store/store_register.c:276: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `lh_OSSL_STORE_LOADER_doall_void`.
Showing all 8 steps of the trace


crypto/store/store_register.c:276:5: Call
274.                                 void *do_arg)
275.   {
276.       lh_OSSL_STORE_LOADER_doall_void(loader_register, do_function, do_arg);
           ^
277.       return 1;
278.   }

crypto/store/store_register.c:271:1: Parameter `lh->num_nodes`
  269.    */
  270.   
  271. > IMPLEMENT_LHASH_DOALL_ARG_CONST(OSSL_STORE_LOADER, void);
  272.   int OSSL_STORE_do_all_loaders(void (*do_function) (const OSSL_STORE_LOADER
  273.                                                      *loader, void *do_arg),

crypto/store/store_register.c:271:1: Call
  269.    */
  270.   
  271. > IMPLEMENT_LHASH_DOALL_ARG_CONST(OSSL_STORE_LOADER, void);
  272.   int OSSL_STORE_do_all_loaders(void (*do_function) (const OSSL_STORE_LOADER
  273.                                                      *loader, void *do_arg),

crypto/lhash/lhash.c:186:1: Parameter `lh->num_nodes`
    184.   }
    185.   
    186. > void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg)
    187.   {
    188.       doall_util_fn(lh, 1, (OPENSSL_LH_DOALL_FUNC)0, func, arg);

crypto/lhash/lhash.c:188:5: Call
    186.   void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg)
    187.   {
    188.       doall_util_fn(lh, 1, (OPENSSL_LH_DOALL_FUNC)0, func, arg);
               ^
    189.   }
    190.   

crypto/lhash/lhash.c:154:1: <LHS trace>
152.   }
153.   
154. > static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,
155.                             OPENSSL_LH_DOALL_FUNC func,
156.                             OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)

crypto/lhash/lhash.c:154:1: Parameter `lh->num_nodes`
      152.   }
      153.   
      154. > static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,
      155.                             OPENSSL_LH_DOALL_FUNC func,
      156.                             OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)

crypto/lhash/lhash.c:168:10: Binary operation: ([0, +oo] - 1):unsigned32 by call to `lh_OSSL_STORE_LOADER_doall_void` 
      166.        * memory leaks otherwise
      167.        */
      168.       for (i = lh->num_nodes - 1; i >= 0; i--) {
                      ^
      169.           a = lh->b[i];
      170.           while (a != NULL) {

static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,
                          OPENSSL_LH_DOALL_FUNC func,
                          OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)
{
    int i;
    OPENSSL_LH_NODE *a, *n;
    if (lh == NULL)
        return;
    for (i = lh->num_nodes - 1; i >= 0; i--) {
        a = lh->b[i];
        while (a != NULL) {
            n = a->next;
            if (use_arg)
                func_arg(a->data, arg);
            else
                func(a->data);
            a = n;
        }
    }
}
['int OSSL_STORE_do_all_loaders(void (*do_function) (const OSSL_STORE_LOADER\n                                                   *loader, void *do_arg),\n                              void *do_arg)\n{\n    lh_OSSL_STORE_LOADER_doall_void(loader_register, do_function, do_arg);\n    return 1;\n}', 'IMPLEMENT_LHASH_DOALL_ARG_CONST(OSSL_STORE_LOADER, void)', 'void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg)\n{\n    doall_util_fn(lh, 1, (OPENSSL_LH_DOALL_FUNC)0, func, arg);\n}', 'static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,\n                          OPENSSL_LH_DOALL_FUNC func,\n                          OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)\n{\n    int i;\n    OPENSSL_LH_NODE *a, *n;\n    if (lh == NULL)\n        return;\n    for (i = lh->num_nodes - 1; i >= 0; i--) {\n        a = lh->b[i];\n        while (a != NULL) {\n            n = a->next;\n            if (use_arg)\n                func_arg(a->data, arg);\n            else\n                func(a->data);\n            a = n;\n        }\n    }\n}']