bool is no longer required, it was only used for the print statement

This commit is contained in:
Neal Norwitz 2007-02-26 19:04:49 +00:00
parent a44f3a3e0b
commit 3591bbe453
2 changed files with 3 additions and 8 deletions

View file

@ -1,4 +1,4 @@
-- ASDL's five builtin types are identifier, int, string, object, bool
-- ASDL's five builtin types are identifier, int, string, object
module Python version "$Revision$"
{

View file

@ -15,7 +15,7 @@ def get_c_type(name):
"""Return a string for the C name of the type.
This function special cases the default types provided by asdl:
identifier, string, int, bool.
identifier, string, int.
"""
# XXX ack! need to figure out where Id is useful and where string
if isinstance(name, asdl.Id):
@ -288,8 +288,7 @@ def emit(s, depth=0, reflow=1):
emit("{")
emit("%s p;" % ctype, 1)
for argtype, argname, opt in args:
# XXX hack alert: false is allowed for a bool
if not opt and not (argtype == "bool" or argtype == "int"):
if not opt and argtype != "int":
emit("if (!%s) {" % argname, 1)
emit("PyErr_SetString(PyExc_ValueError,", 2)
msg = "field %s is required for %s" % (argname, name)
@ -467,10 +466,6 @@ def visitModule(self, mod):
}
#define ast2obj_identifier ast2obj_object
#define ast2obj_string ast2obj_object
static PyObject* ast2obj_bool(bool b)
{
return PyBool_FromLong(b);
}
static PyObject* ast2obj_int(long b)
{