]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Only * can be used for varargs argument lists
authorGuido van Rossum <guido@python.org>
Sun, 5 Apr 1992 14:24:50 +0000 (14:24 +0000)
committerGuido van Rossum <guido@python.org>
Sun, 5 Apr 1992 14:24:50 +0000 (14:24 +0000)
Python/compile.c

index c8ce0aacaca938436178552d4d2295d071be96d7..dd4fe153b71074cad02b332ee63f7468684a3aa0 100644 (file)
@@ -1,5 +1,5 @@
 /***********************************************************
-Copyright 1991 by Stichting Mathematisch Centrum, Amsterdam, The
+Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The
 Netherlands.
 
                         All Rights Reserved
@@ -1566,7 +1566,11 @@ com_try_stmt(c, n)
        int finally_anchor = 0;
        int except_anchor = 0;
        REQ(n, try_stmt);
-       /* 'try' ':' suite (except_clause ':' suite)* ['finally' ':' suite] */
+       /* 'try' ':' suite (except_clause ':' suite)*
+        | 'try' ':' 'finally' ':' suite */
+
+       /* XXX This can be simplified because except and finally can
+          no longer be mixed in a single try statement */
        
        if (NCH(n) > 3 && TYPE(CHILD(n, NCH(n)-3)) != except_clause) {
                /* Have a 'finally' clause */
@@ -1958,12 +1962,12 @@ com_arglist(c, n)
        int i, nargs, op;
        REQ(n, varargslist);
        /* varargslist:
-          (fpdef ',')* ('+'|'*') NAME | fpdef (',' fpdef)* [','] */
+          (fpdef ',')* '*' NAME | fpdef (',' fpdef)* [','] */
        op = UNPACK_ARG;
        nargs = (NCH(n) + 1) / 2;
        for (i = 0; i < NCH(n); i += 2) {
                int t = TYPE(CHILD(n, i));
-               if (t == PLUS || t == STAR) {
+               if (t == STAR) {
                        op = UNPACK_VARARG;
                        nargs = i/2;
                        break;