give the AST class a __dict__
diff --git a/Python/Python-ast.c b/Python/Python-ast.c
index 2603b81..cf73bea 100644
--- a/Python/Python-ast.c
+++ b/Python/Python-ast.c
@@ -1,5 +1,7 @@
 /* File automatically generated by Parser/asdl_c.py. */
 
+#include <stddef.h>
+
 #include "Python.h"
 #include "Python-ast.h"
 
@@ -453,6 +455,11 @@
 };
 
 
+typedef struct {
+    PyObject_HEAD;
+    PyObject *dict;
+} AST_object;
+
 static int
 ast_type_init(PyObject *self, PyObject *args, PyObject *kw)
 {
@@ -531,10 +538,15 @@
     {NULL}
 };
 
+static PyGetSetDef ast_type_getsets[] = {
+    {"__dict__", PyObject_GenericGetDict, PyObject_GenericSetDict},
+    {NULL}
+};
+
 static PyTypeObject AST_type = {
     PyVarObject_HEAD_INIT(&PyType_Type, 0)
     "_ast.AST",
-    sizeof(PyObject),
+    sizeof(AST_object),
     0,
     0,                       /* tp_dealloc */
     0,                       /* tp_print */
@@ -561,12 +573,12 @@
     0,                       /* tp_iternext */
     ast_type_methods,        /* tp_methods */
     0,                       /* tp_members */
-    0,                       /* tp_getset */
+    ast_type_getsets,        /* tp_getset */
     0,                       /* tp_base */
     0,                       /* tp_dict */
     0,                       /* tp_descr_get */
     0,                       /* tp_descr_set */
-    0,                       /* tp_dictoffset */
+    offsetof(AST_object, dict),/* tp_dictoffset */
     (initproc)ast_type_init, /* tp_init */
     PyType_GenericAlloc,     /* tp_alloc */
     PyType_GenericNew,       /* tp_new */