+Mon Jul 27 14:22:36 1998 Dave Brolley <brolley@cygnus.com>
+
+ * c-lex.c (yylex): Fix boundary conditions in character literal and
+ string literal loops.
+
Mon Jul 27 11:43:54 1998 Stan Cox <scox@cygnus.com>
* longlong.h (count_leading_zeros): Sparclite scan instruction was
int char_len = -1;
for (i = 0; i < longest_char; ++i)
{
- if (p + i == token_buffer + maxtoken)
+ if (p + i >= token_buffer + maxtoken)
p = extend_token_buffer (p);
p[i] = c;
unsigned bytemask = (1 << width) - 1;
int byte;
- if (p + WCHAR_BYTES >= token_buffer + maxtoken)
+ if (p + WCHAR_BYTES > token_buffer + maxtoken)
p = extend_token_buffer (p);
for (byte = 0; byte < WCHAR_BYTES; ++byte)
}
else
{
- if (p == token_buffer + maxtoken)
+ if (p >= token_buffer + maxtoken)
p = extend_token_buffer (p);
*p++ = c;
}
or with a wide zero. */
if (wide_flag)
{
- if (p + WCHAR_BYTES >= token_buffer + maxtoken)
+ if (p + WCHAR_BYTES > token_buffer + maxtoken)
p = extend_token_buffer (p);
bzero (p, WCHAR_BYTES);
p += WCHAR_BYTES;
}
else
{
- if (p == token_buffer + maxtoken)
+ if (p >= token_buffer + maxtoken)
p = extend_token_buffer (p);
*p++ = 0;
}