mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
Merged revisions 55225-55227,55229-55269 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/p3yk ................ r55238 | guido.van.rossum | 2007-05-10 16:46:05 -0700 (Thu, 10 May 2007) | 9 lines Merged revisions 55227 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r55227 | guido.van.rossum | 2007-05-10 10:20:15 -0700 (Thu, 10 May 2007) | 2 lines Fix a bug in test_c_api() that caused a negative refcount. ........ ................ r55246 | neal.norwitz | 2007-05-11 00:01:52 -0700 (Fri, 11 May 2007) | 1 line Remove commands.getstatus() it is obsolete. ................ r55248 | neal.norwitz | 2007-05-11 00:29:05 -0700 (Fri, 11 May 2007) | 2 lines Remove bsddb185 support. ................ r55249 | neal.norwitz | 2007-05-11 00:29:50 -0700 (Fri, 11 May 2007) | 1 line Remove bsddb185 module too ................ r55250 | neal.norwitz | 2007-05-11 00:32:13 -0700 (Fri, 11 May 2007) | 1 line bsddb185: Gotta remove from the file checked in, not Setup ................ r55251 | neal.norwitz | 2007-05-11 00:53:26 -0700 (Fri, 11 May 2007) | 1 line Remove obsolete IRIX modules (as much as I could find, there is probably more) ................ r55252 | neal.norwitz | 2007-05-11 00:55:35 -0700 (Fri, 11 May 2007) | 1 line Remove SGI turd. ................ r55254 | georg.brandl | 2007-05-11 03:11:01 -0700 (Fri, 11 May 2007) | 2 lines Add a case for set comprehensions to the "cannot assign to" switch. ................ r55255 | georg.brandl | 2007-05-11 03:11:25 -0700 (Fri, 11 May 2007) | 2 lines Fix wrong imports. ................ r55261 | georg.brandl | 2007-05-11 07:37:48 -0700 (Fri, 11 May 2007) | 2 lines Remove removed tex files. ................ r55262 | georg.brandl | 2007-05-11 08:28:41 -0700 (Fri, 11 May 2007) | 2 lines Commit PEP 3132 implementation. ................ r55264 | georg.brandl | 2007-05-11 08:50:19 -0700 (Fri, 11 May 2007) | 2 lines Check in the inevitable AST version number and format Py_ssize_t with %zd. ................ r55265 | neal.norwitz | 2007-05-11 09:12:22 -0700 (Fri, 11 May 2007) | 1 line Remove mention of os.popen* and popen2.* since these will be removed. ................ r55266 | neal.norwitz | 2007-05-11 09:19:57 -0700 (Fri, 11 May 2007) | 1 line Get doc to build again (almost, the doc is fine) ................ r55267 | neal.norwitz | 2007-05-11 09:21:02 -0700 (Fri, 11 May 2007) | 1 line Really get doc to build (remove use of string module) ................ r55269 | neal.norwitz | 2007-05-11 09:29:43 -0700 (Fri, 11 May 2007) | 1 line Add some notes to cleanup later ................
This commit is contained in:
parent
bdde01168f
commit
0368b726a1
57 changed files with 842 additions and 22519 deletions
28
Python/ast.c
28
Python/ast.c
|
@ -355,6 +355,11 @@ set_context(expr_ty e, expr_context_ty ctx, const node *n)
|
|||
case Subscript_kind:
|
||||
e->v.Subscript.ctx = ctx;
|
||||
break;
|
||||
case Starred_kind:
|
||||
e->v.Starred.ctx = ctx;
|
||||
if (!set_context(e->v.Starred.value, ctx, n))
|
||||
return 0;
|
||||
break;
|
||||
case Name_kind:
|
||||
if (ctx == Store &&
|
||||
!strcmp(PyString_AS_STRING(e->v.Name.id), "None")) {
|
||||
|
@ -392,6 +397,9 @@ set_context(expr_ty e, expr_context_ty ctx, const node *n)
|
|||
case ListComp_kind:
|
||||
expr_name = "list comprehension";
|
||||
break;
|
||||
case SetComp_kind:
|
||||
expr_name = "set comprehension";
|
||||
break;
|
||||
case Dict_kind:
|
||||
case Set_kind:
|
||||
case Num_kind:
|
||||
|
@ -1661,6 +1669,21 @@ ast_for_power(struct compiling *c, const node *n)
|
|||
return e;
|
||||
}
|
||||
|
||||
static expr_ty
|
||||
ast_for_starred(struct compiling *c, const node *n)
|
||||
{
|
||||
expr_ty tmp;
|
||||
REQ(n, star_expr);
|
||||
|
||||
tmp = ast_for_expr(c, CHILD(n, 1));
|
||||
if (!tmp)
|
||||
return NULL;
|
||||
|
||||
/* The Load context is changed later. */
|
||||
return Starred(tmp, Load, LINENO(n), n->n_col_offset, c->c_arena);
|
||||
}
|
||||
|
||||
|
||||
/* Do not name a variable 'expr'! Will cause a compile error.
|
||||
*/
|
||||
|
||||
|
@ -1772,6 +1795,11 @@ ast_for_expr(struct compiling *c, const node *n)
|
|||
}
|
||||
break;
|
||||
|
||||
case star_expr:
|
||||
if (TYPE(CHILD(n, 0)) == STAR) {
|
||||
return ast_for_starred(c, n);
|
||||
}
|
||||
/* Fallthrough */
|
||||
/* The next five cases all handle BinOps. The main body of code
|
||||
is the same in each case, but the switch turned inside out to
|
||||
reuse the code for each type of operator.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue