include/internal/constant_time_locl.h:325: error: INTEGER_OVERFLOW_L2
  ([0, `idx`] - 1):unsigned64 by call to `constant_time_is_zero_s`.
Showing all 5 steps of the trace


include/internal/constant_time_locl.h:310:1: Parameter `idx`
308.    * private.
309.    */
310. > static ossl_inline void constant_time_lookup(void *out,
311.                                                const void *table,
312.                                                size_t rowsize,

include/internal/constant_time_locl.h:325:31: Call
323.       /* Note idx may underflow - but that is well defined */
324.       for (i = 0; i < numrows; i++, idx--) {
325.           mask = (unsigned char)constant_time_is_zero_s(idx);
                                     ^
326.           for (j = 0; j < rowsize; j++)
327.               *(outc + j) |= constant_time_select_8(mask, *(tablec++), 0);

include/internal/constant_time_locl.h:173:1: <LHS trace>
171.   }
172.   
173. > static ossl_inline size_t constant_time_is_zero_s(size_t a)
174.   {
175.       return constant_time_msb_s(~a & (a - 1));

include/internal/constant_time_locl.h:173:1: Parameter `a`
  171.   }
  172.   
  173. > static ossl_inline size_t constant_time_is_zero_s(size_t a)
  174.   {
  175.       return constant_time_msb_s(~a & (a - 1));

include/internal/constant_time_locl.h:175:12: Binary operation: ([0, idx] - 1):unsigned64 by call to `constant_time_is_zero_s` 
  173.   static ossl_inline size_t constant_time_is_zero_s(size_t a)
  174.   {
  175.       return constant_time_msb_s(~a & (a - 1));
                    ^
  176.   }
  177.   
