allow keyword args after *args in a function call
diff --git a/Python/ast.c b/Python/ast.c
index 46bfd4e..6d2fa09 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -1961,6 +1961,11 @@
                               "non-keyword arg after keyword arg");
                     return NULL;
                 }
+                if (vararg) {
+                    ast_error(CHILD(ch, 0),
+                              "only named arguments may follow *expression");
+                    return NULL;
+                }
                 e = ast_for_expr(c, CHILD(ch, 0));
                 if (!e)
                     return NULL;
diff --git a/Python/graminit.c b/Python/graminit.c
index e26bcc5..6f3787a 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -1598,7 +1598,8 @@
 static arc arcs_73_6[1] = {
 	{0, 6},
 };
-static arc arcs_73_7[1] = {
+static arc arcs_73_7[2] = {
+	{161, 5},
 	{32, 3},
 };
 static state states_73[8] = {
@@ -1609,7 +1610,7 @@
 	{4, arcs_73_4},
 	{2, arcs_73_5},
 	{1, arcs_73_6},
-	{1, arcs_73_7},
+	{2, arcs_73_7},
 };
 static arc arcs_74_0[1] = {
 	{24, 1},