tools/tiff2bw.c:71: error: Integer Overflow L2
  ([0, `n`] - 1):unsigned32.

tools/tiff2bw.c:65:1: <LHS trace>
63. }
64. 
65. static void
    ^
66. compresssep(unsigned char* out,
67. 	    unsigned char* r, unsigned char* g, unsigned char* b, uint32 n)

tools/tiff2bw.c:65:1: Parameter `n`
63. }
64. 
65. static void
    ^
66. compresssep(unsigned char* out,
67. 	    unsigned char* r, unsigned char* g, unsigned char* b, uint32 n)

tools/tiff2bw.c:71:9: Binary operation: ([0, n] - 1):unsigned32
69. 	register uint32 red = RED, green = GREEN, blue = BLUE;
70. 
71. 	while (n-- > 0)
            ^
72. 		*out++ = (unsigned char)
73. 			((red*(*r++) + green*(*g++) + blue*(*b++)) >> 8);

static void
compresssep(unsigned char* out,
	    unsigned char* r, unsigned char* g, unsigned char* b, uint32 n)
{
	register uint32 red = RED, green = GREEN, blue = BLUE;
	while (n-- > 0)
		*out++ = (unsigned char)
			((red*(*r++) + green*(*g++) + blue*(*b++)) >> 8);
}
['static void\ncompresssep(unsigned char* out,\n\t    unsigned char* r, unsigned char* g, unsigned char* b, uint32 n)\n{\n\tregister uint32 red = RED, green = GREEN, blue = BLUE;\n\twhile (n-- > 0)\n\t\t*out++ = (unsigned char)\n\t\t\t((red*(*r++) + green*(*g++) + blue*(*b++)) >> 8);\n}']