Mercurial > cpython-lru_cache-weakref
comparison Python/pythonrun.c @ 2844:0261bf5b3819 legacy-trunk
keyword arguments and faster calls
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Tue, 18 Jul 1995 14:51:37 +0000 |
| parents | ed30bca184bb |
| children | beeea9757879 |
comparison
equal
deleted
inserted
replaced
| 2843:8d92a3bb9c1f | 2844:0261bf5b3819 |
|---|---|
| 428 object *v; | 428 object *v; |
| 429 co = compile(n, filename); | 429 co = compile(n, filename); |
| 430 freetree(n); | 430 freetree(n); |
| 431 if (co == NULL) | 431 if (co == NULL) |
| 432 return NULL; | 432 return NULL; |
| 433 v = eval_code(co, globals, locals, (object *)NULL, (object *)NULL); | 433 v = eval_code(co, globals, locals); |
| 434 DECREF(co); | 434 DECREF(co); |
| 435 return v; | 435 return v; |
| 436 } | 436 } |
| 437 | 437 |
| 438 static object * | 438 static object * |
| 460 err_setstr(RuntimeError, | 460 err_setstr(RuntimeError, |
| 461 "Bad code object in .pyc file"); | 461 "Bad code object in .pyc file"); |
| 462 return NULL; | 462 return NULL; |
| 463 } | 463 } |
| 464 co = (codeobject *)v; | 464 co = (codeobject *)v; |
| 465 v = eval_code(co, globals, locals, (object *)NULL, (object *)NULL); | 465 v = eval_code(co, globals, locals); |
| 466 DECREF(co); | 466 DECREF(co); |
| 467 return v; | 467 return v; |
| 468 } | 468 } |
| 469 | 469 |
| 470 object * | 470 object * |
| 601 cleanup() | 601 cleanup() |
| 602 { | 602 { |
| 603 object *exitfunc = sysget("exitfunc"); | 603 object *exitfunc = sysget("exitfunc"); |
| 604 | 604 |
| 605 if (exitfunc) { | 605 if (exitfunc) { |
| 606 object *arg; | |
| 607 object *res; | 606 object *res; |
| 608 sysset("exitfunc", (object *)NULL); | 607 sysset("exitfunc", (object *)NULL); |
| 609 arg = newtupleobject(0); | 608 res = call_object(exitfunc, (object *)NULL); |
| 610 if (arg == NULL) | |
| 611 res = NULL; | |
| 612 else { | |
| 613 res = call_object(exitfunc, arg); | |
| 614 DECREF(arg); | |
| 615 } | |
| 616 if (res == NULL) { | 609 if (res == NULL) { |
| 617 fprintf(stderr, "Error in sys.exitfunc:\n"); | 610 fprintf(stderr, "Error in sys.exitfunc:\n"); |
| 618 print_error(); | 611 print_error(); |
| 619 } | 612 } |
| 620 } | 613 } |
