tools/tiffcrop.c:3350: error: Integer Overflow L2
  ([0, `rows`] - 1):unsigned32.

tools/tiffcrop.c:3345:1: <LHS trace>
3343. 
3344. /* This will not work unless bps is a multiple of 8 */
3345. static void
      ^
3346. cpSeparateBufToContigBuf(uint8  *out, uint8 *in, uint32 rows, uint32 cols, 
3347.                          int outskew, int inskew, tsample_t spp,

tools/tiffcrop.c:3345:1: Parameter `rows`
3343. 
3344. /* This will not work unless bps is a multiple of 8 */
3345. static void
      ^
3346. cpSeparateBufToContigBuf(uint8  *out, uint8 *in, uint32 rows, uint32 cols, 
3347.                          int outskew, int inskew, tsample_t spp,

tools/tiffcrop.c:3350:10: Binary operation: ([0, rows] - 1):unsigned32
3348.                          int bytes_per_sample)
3349.   {
3350.   while (rows-- > 0)
               ^
3351.     {
3352.     uint32 j = cols;

static void
cpSeparateBufToContigBuf(uint8  *out, uint8 *in, uint32 rows, uint32 cols,
                         int outskew, int inskew, tsample_t spp,
                         int bytes_per_sample)
  {
  while (rows-- > 0)
    {
    uint32 j = cols;
    while (j-- > 0)
      {
      int n = bytes_per_sample;
      while( n-- )
        {
        *out++ = *in++;
        }
      out += (spp-1)*bytes_per_sample;
      }
    out += outskew;
    in += inskew;
    }
  }
['static void\ncpSeparateBufToContigBuf(uint8  *out, uint8 *in, uint32 rows, uint32 cols,\n                         int outskew, int inskew, tsample_t spp,\n                         int bytes_per_sample)\n  {\n  while (rows-- > 0)\n    {\n    uint32 j = cols;\n    while (j-- > 0)\n      {\n      int n = bytes_per_sample;\n      while( n-- )\n        {\n        *out++ = *in++;\n        }\n      out += (spp-1)*bytes_per_sample;\n      }\n    out += outskew;\n    in += inskew;\n    }\n  }']