mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
sync parse.y changes from base; ok naddy@
original from naddy@: > Don't declare variables as "unsigned char *" that are passed to > functions that take "char *" arguments. Where such chars are > assigned to int or passed to ctype functions, explicitly cast them > to unsigned char. > > For OpenBSD's clang, -Wpointer-sign has been disabled by default, > but when the parse.y code was built elsewhere, the compiler would > complain. > > With help from millert@ > ok benno@ deraadt@
This commit is contained in:
parent
055b84f4d4
commit
a9eeb04606
28
parse.y
28
parse.y
@ -361,9 +361,9 @@ lookup(char *s)
|
||||
|
||||
#define MAXPUSHBACK 128
|
||||
|
||||
u_char *parsebuf;
|
||||
char *parsebuf;
|
||||
int parseindex;
|
||||
u_char pushback_buffer[MAXPUSHBACK];
|
||||
char pushback_buffer[MAXPUSHBACK];
|
||||
int pushback_index = 0;
|
||||
|
||||
int
|
||||
@ -374,7 +374,7 @@ lgetc(int quotec)
|
||||
if (parsebuf) {
|
||||
/* Read character from the parsebuffer instead of input. */
|
||||
if (parseindex >= 0) {
|
||||
c = parsebuf[parseindex++];
|
||||
c = (unsigned char)parsebuf[parseindex++];
|
||||
if (c != '\0')
|
||||
return (c);
|
||||
parsebuf = NULL;
|
||||
@ -383,7 +383,7 @@ lgetc(int quotec)
|
||||
}
|
||||
|
||||
if (pushback_index)
|
||||
return (pushback_buffer[--pushback_index]);
|
||||
return ((unsigned char)pushback_buffer[--pushback_index]);
|
||||
|
||||
if (quotec) {
|
||||
if ((c = getc(file->stream)) == EOF) {
|
||||
@ -424,10 +424,10 @@ lungetc(int c)
|
||||
if (parseindex >= 0)
|
||||
return (c);
|
||||
}
|
||||
if (pushback_index < MAXPUSHBACK-1)
|
||||
return (pushback_buffer[pushback_index++] = c);
|
||||
else
|
||||
if (pushback_index + 1 >= MAXPUSHBACK)
|
||||
return (EOF);
|
||||
pushback_buffer[pushback_index++] = c;
|
||||
return (c);
|
||||
}
|
||||
|
||||
int
|
||||
@ -440,7 +440,7 @@ findeol(void)
|
||||
/* skip to either EOF or the first real EOL */
|
||||
while (1) {
|
||||
if (pushback_index)
|
||||
c = pushback_buffer[--pushback_index];
|
||||
c = (unsigned char)pushback_buffer[--pushback_index];
|
||||
else
|
||||
c = lgetc(0);
|
||||
if (c == '\n') {
|
||||
@ -456,8 +456,8 @@ findeol(void)
|
||||
int
|
||||
yylex(void)
|
||||
{
|
||||
u_char buf[8096];
|
||||
u_char *p;
|
||||
char buf[8096];
|
||||
char *p;
|
||||
int quotec, next, c;
|
||||
int token;
|
||||
|
||||
@ -514,7 +514,7 @@ yylex(void)
|
||||
if (c == '-' || isdigit(c)) {
|
||||
do {
|
||||
*p++ = c;
|
||||
if ((unsigned)(p-buf) >= sizeof(buf)) {
|
||||
if ((size_t)(p-buf) >= sizeof(buf)) {
|
||||
yyerror("string too long");
|
||||
return (findeol());
|
||||
}
|
||||
@ -537,8 +537,8 @@ yylex(void)
|
||||
} else {
|
||||
nodigits:
|
||||
while (p > buf + 1)
|
||||
lungetc(*--p);
|
||||
c = *--p;
|
||||
lungetc((unsigned char)*--p);
|
||||
c = (unsigned char)*--p;
|
||||
if (c == '-')
|
||||
return (c);
|
||||
}
|
||||
@ -553,7 +553,7 @@ nodigits:
|
||||
if (isalnum(c) || c == ':' || c == '_' || c == '*' || c == '/') {
|
||||
do {
|
||||
*p++ = c;
|
||||
if ((unsigned)(p-buf) >= sizeof(buf)) {
|
||||
if ((size_t)(p-buf) >= sizeof(buf)) {
|
||||
yyerror("string too long");
|
||||
return (findeol());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user