diff -r 129289144dfb Lib/test/test_parser.py --- a/Lib/test/test_parser.py Mon May 07 16:34:34 2012 +0100 +++ b/Lib/test/test_parser.py Mon May 07 17:18:09 2012 +0100 @@ -106,6 +106,7 @@ self.check_expr("lambda x, *y, **z: 0") self.check_expr("(x for x in range(10))") self.check_expr("foo(x for x in range(10))") + self.check_expr("...") def test_simple_expression(self): # expr_stmt diff -r 129289144dfb Modules/parsermodule.c --- a/Modules/parsermodule.c Mon May 07 16:34:34 2012 +0100 +++ b/Modules/parsermodule.c Mon May 07 17:18:09 2012 +0100 @@ -2389,17 +2389,13 @@ break; case NAME: case NUMBER: + case ELLIPSIS: res = (nch == 1); break; case STRING: for (pos = 1; res && (pos < nch); ++pos) res = validate_ntype(CHILD(tree, pos), STRING); break; - case DOT: - res = (nch == 3 && - validate_ntype(CHILD(tree, 1), DOT) && - validate_ntype(CHILD(tree, 2), DOT)); - break; default: res = 0; break;