mirror of https://github.com/python/cpython.git
changes for pow(**) and complex
This commit is contained in:
parent
c7fea2feed
commit
f595fde47b
|
@ -83,6 +83,7 @@ char *tok_name[] = {
|
||||||
"CIRCUMFLEX",
|
"CIRCUMFLEX",
|
||||||
"LEFTSHIFT",
|
"LEFTSHIFT",
|
||||||
"RIGHTSHIFT",
|
"RIGHTSHIFT",
|
||||||
|
"DOUBLESTAR",
|
||||||
/* This table must match the #defines in token.h! */
|
/* This table must match the #defines in token.h! */
|
||||||
"OP",
|
"OP",
|
||||||
"<ERRORTOKEN>",
|
"<ERRORTOKEN>",
|
||||||
|
@ -394,6 +395,11 @@ tok_2char(c1, c2)
|
||||||
case '>': return RIGHTSHIFT;
|
case '>': return RIGHTSHIFT;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case '*':
|
||||||
|
switch (c2) {
|
||||||
|
case '*': return DOUBLESTAR;
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return OP;
|
return OP;
|
||||||
}
|
}
|
||||||
|
@ -558,7 +564,7 @@ tok_get(tok, p_start, p_end)
|
||||||
return DOT;
|
return DOT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Number */
|
/* Number */
|
||||||
if (isdigit(c)) {
|
if (isdigit(c)) {
|
||||||
if (c == '0') {
|
if (c == '0') {
|
||||||
|
@ -566,6 +572,10 @@ tok_get(tok, p_start, p_end)
|
||||||
c = tok_nextc(tok);
|
c = tok_nextc(tok);
|
||||||
if (c == '.')
|
if (c == '.')
|
||||||
goto fraction;
|
goto fraction;
|
||||||
|
#ifndef WITHOUT_COMPLEX
|
||||||
|
if (c == 'i' || c == 'I' || c == 'j' || c == 'J')
|
||||||
|
goto imaginary;
|
||||||
|
#endif
|
||||||
if (c == 'x' || c == 'X') {
|
if (c == 'x' || c == 'X') {
|
||||||
/* Hex */
|
/* Hex */
|
||||||
do {
|
do {
|
||||||
|
@ -611,6 +621,12 @@ tok_get(tok, p_start, p_end)
|
||||||
c = tok_nextc(tok);
|
c = tok_nextc(tok);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#ifndef WITHOUT_COMPLEX
|
||||||
|
if (c == 'i' || c == 'I' || c == 'j' || c == 'J')
|
||||||
|
/* Imaginary part */
|
||||||
|
imaginary:
|
||||||
|
c = tok_nextc(tok);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tok_backup(tok, c);
|
tok_backup(tok, c);
|
||||||
|
|
Loading…
Reference in New Issue