* import.c (get_module): pass .py filename to parse_file, not .pyc filename!
* funcobject.c (func_repr): don't call getstringvalue(None) for anonymous
functions.
* bltinmodule.c: removed lambda (which is now a built-in function);
removed implied lambda for string arg to filter/map/reduce.
* Grammar, graminit.[ch], compile.[ch]: replaced lambda as built-in
function by lambda as grammar entity: instead of "lambda('x: x+1')" you
write "lambda x: x+1".
* Xtmodule.c (checkargdict): return 0, not NULL, for error.
diff --git a/Objects/funcobject.c b/Objects/funcobject.c
index 4dc0b90..cc4900a 100644
--- a/Objects/funcobject.c
+++ b/Objects/funcobject.c
@@ -100,9 +100,12 @@
funcobject *op;
{
char buf[140];
- sprintf(buf, "<function %.100s at %lx>",
- getstringvalue(op->func_name),
- (long)op);
+ if (op->func_name == None)
+ sprintf(buf, "<anonymous function at %lx>", (long)op);
+ else
+ sprintf(buf, "<function %.100s at %lx>",
+ getstringvalue(op->func_name),
+ (long)op);
return newstringobject(buf);
}