Fixed #1573: Improper use of the keyword-only syntax makes the parser crash
>>> def f(*, **kw):
...   pass
...
python: Python/ast.c:652: handle_keywordonly_args: Assertion 'kwonlyargs
!= ((void *)0)' failed.
diff --git a/Misc/NEWS b/Misc/NEWS
index b3905c6..f5ab868 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -4,7 +4,27 @@
 
 (editors: check NEWS.help for information about editing NEWS using ReST.)
 
+What's New in Python 3.0a3?
+===========================
+
+*Release data: XX-XXX-2008*
+
+Core and Builtins
+-----------------
+
+- Issue #1573: Improper use of the keyword-only syntax makes the parser crash
+
+
+Extension Modules
+-----------------
+
+
+Library
+-------
+
+
 What's New in Python 3.0a2?
+===========================
 
 *Release date: 07-Dec-2007*
 
diff --git a/Python/ast.c b/Python/ast.c
index 6ad43dd..0127281 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -649,8 +649,8 @@
     arg_ty arg;
     int i = start;
     int j = 0; /* index for kwdefaults and kwonlyargs */
-    assert(kwonlyargs != NULL);
-    assert(kwdefaults != NULL);
+    assert((kwonlyargs != NULL && kwdefaults != NULL) ||
+           TYPE(CHILD(n, i)) == DOUBLESTAR);
     while (i < NCH(n)) {
         ch = CHILD(n, i);
         switch (TYPE(ch)) {