version 1.4, 1999/12/08 23:09:45 |
version 1.5, 2001/09/08 00:12:40 |
|
|
input(); yylval.i = POWEQ; RET(ASGNOP); |
input(); yylval.i = POWEQ; RET(ASGNOP); |
} else |
} else |
RET(POWER); |
RET(POWER); |
|
|
case '$': |
case '$': |
/* BUG: awkward, if not wrong */ |
/* BUG: awkward, if not wrong */ |
c = gettok(&buf, &bufsize); |
c = gettok(&buf, &bufsize); |
if (c == '(' || c == '[' || (infunc && isarg(buf) >= 0)) { |
if (isalpha(c)) { |
unputstr(buf); |
|
RET(INDIRECT); |
|
} else if (isalpha(c)) { |
|
if (strcmp(buf, "NF") == 0) { /* very special */ |
if (strcmp(buf, "NF") == 0) { /* very special */ |
unputstr("(NF)"); |
unputstr("(NF)"); |
|
RET(INDIRECT); |
|
} |
|
c = peek(); |
|
if (c == '(' || c == '[' || (infunc && isarg(buf) >= 0)) { |
|
unputstr(buf); |
RET(INDIRECT); |
RET(INDIRECT); |
} |
} |
yylval.cp = setsymtab(buf, "", 0.0, STR|NUM, symtab); |
yylval.cp = setsymtab(buf, "", 0.0, STR|NUM, symtab); |