* gasp.c (process_assigns): Use toupper before comparing against

upper case letter.
	(whatcond): Likewise.
PR 7281.
This commit is contained in:
Ian Lance Taylor 1995-07-19 16:22:14 +00:00
parent 5f8cb05eef
commit fe98e22d83
2 changed files with 42 additions and 29 deletions

View file

@ -1,5 +1,9 @@
Wed Jul 19 11:49:25 1995 Ian Lance Taylor <ian@cygnus.com>
* gasp.c (process_assigns): Use toupper before comparing against
upper case letter.
(whatcond): Likewise.
* config/tc-sh.c (sh_relax): Rename from relax, and make global.
Renamed all uses.
(insert): Pass a size of 2, not 4.

View file

@ -1957,26 +1957,26 @@ process_assigns (idx, in, buf)
}
else if (idx + 3 < in->len
&& in->ptr[idx] == '.'
&& in->ptr[idx + 1] == 'L'
&& in->ptr[idx + 2] == 'E'
&& in->ptr[idx + 3] == 'N')
&& toupper ((unsigned char) in->ptr[idx + 1]) == 'L'
&& toupper ((unsigned char) in->ptr[idx + 2]) == 'E'
&& toupper ((unsigned char) in->ptr[idx + 3]) == 'N')
idx = dolen (idx + 4, in, buf);
else if (idx + 6 < in->len
&& in->ptr[idx] == '.'
&& in->ptr[idx + 1] == 'I'
&& in->ptr[idx + 2] == 'N'
&& in->ptr[idx + 3] == 'S'
&& in->ptr[idx + 4] == 'T'
&& in->ptr[idx + 5] == 'R')
&& toupper ((unsigned char) in->ptr[idx + 1]) == 'I'
&& toupper ((unsigned char) in->ptr[idx + 2]) == 'N'
&& toupper ((unsigned char) in->ptr[idx + 3]) == 'S'
&& toupper ((unsigned char) in->ptr[idx + 4]) == 'T'
&& toupper ((unsigned char) in->ptr[idx + 5]) == 'R')
idx = doinstr (idx + 6, in, buf);
else if (idx + 7 < in->len
&& in->ptr[idx] == '.'
&& in->ptr[idx + 1] == 'S'
&& in->ptr[idx + 2] == 'U'
&& in->ptr[idx + 3] == 'B'
&& in->ptr[idx + 4] == 'S'
&& in->ptr[idx + 5] == 'T'
&& in->ptr[idx + 6] == 'R')
&& toupper ((unsigned char) in->ptr[idx + 1]) == 'S'
&& toupper ((unsigned char) in->ptr[idx + 2]) == 'U'
&& toupper ((unsigned char) in->ptr[idx + 3]) == 'B'
&& toupper ((unsigned char) in->ptr[idx + 4]) == 'S'
&& toupper ((unsigned char) in->ptr[idx + 5]) == 'T'
&& toupper ((unsigned char) in->ptr[idx + 6]) == 'R')
idx = dosubstr (idx + 7, in, buf);
else if (ISFIRSTCHAR (in->ptr[idx]))
{
@ -2275,22 +2275,31 @@ whatcond (idx, in, val)
int *val;
{
int cond;
char *p;
idx = sb_skip_white (idx, in);
p = in->ptr + idx;
if (p[0] == 'E' && p[1] == 'Q')
cond = EQ;
else if (p[0] == 'N' && p[1] == 'E')
cond = NE;
else if (p[0] == 'L' && p[1] == 'T')
cond = LT;
else if (p[0] == 'L' && p[1] == 'E')
cond = LE;
else if (p[0] == 'G' && p[1] == 'T')
cond = GT;
else if (p[0] == 'G' && p[1] == 'E')
cond = GE;
else
cond = NEVER;
if (idx + 1 < in->len)
{
char *p;
char a, b;
p = in->ptr + idx;
a = toupper ((unsigned char) p[0]);
b = toupper ((unsigned char) p[1]);
if (a == 'E' && b == 'Q')
cond = EQ;
else if (a == 'N' && b == 'E')
cond = NE;
else if (a == 'L' && b == 'T')
cond = LT;
else if (a == 'L' && b == 'E')
cond = LE;
else if (a == 'G' && b == 'T')
cond = GT;
else if (a == 'G' && b == 'E')
cond = GE;
}
if (cond == NEVER)
{
ERROR ((stderr, "Comparison operator must be one of EQ, NE, LT, LE, GT or GE.\n"));
cond = NEVER;