crypto/blake2/m_blake2s.c:34: error: INTEGER_OVERFLOW_L2
  ([1, +oo] - [-oo, 64]):unsigned64 by call to `BLAKE2s_Update`.
Showing all 6 steps of the trace


crypto/blake2/m_blake2s.c:34:12: Call
32.   static int update(EVP_MD_CTX *ctx, const void *data, size_t count)
33.   {
34.       return BLAKE2s_Update(EVP_MD_CTX_md_data(ctx), data, count);
                 ^
35.   }
36.   

crypto/blake2/blake2s.c:171:1: <LHS trace>
169.   
170.   /* Absorb the input data into the hash state.  Always returns 1. */
171. > int BLAKE2s_Update(BLAKE2S_CTX *c, const void *data, size_t datalen)
172.   {
173.       const uint8_t *in = data;

crypto/blake2/blake2s.c:171:1: Parameter `datalen`
  169.   
  170.   /* Absorb the input data into the hash state.  Always returns 1. */
  171. > int BLAKE2s_Update(BLAKE2S_CTX *c, const void *data, size_t datalen)
  172.   {
  173.       const uint8_t *in = data;

crypto/blake2/blake2s.c:171:1: <RHS trace>
169.   
170.   /* Absorb the input data into the hash state.  Always returns 1. */
171. > int BLAKE2s_Update(BLAKE2S_CTX *c, const void *data, size_t datalen)
172.   {
173.       const uint8_t *in = data;

crypto/blake2/blake2s.c:171:1: Parameter `datalen`
  169.   
  170.   /* Absorb the input data into the hash state.  Always returns 1. */
  171. > int BLAKE2s_Update(BLAKE2S_CTX *c, const void *data, size_t datalen)
  172.   {
  173.       const uint8_t *in = data;

crypto/blake2/blake2s.c:185:13: Binary operation: ([1, +oo] - [-oo, 64]):unsigned64 by call to `BLAKE2s_Update` 
  183.               c->buflen = 0;
  184.               in += fill;
  185.               datalen -= fill;
                     ^
  186.           } else { /* datalen <= fill */
  187.               memcpy(c->buf + c->buflen, in, datalen);
