summaryrefslogtreecommitdiff
path: root/Python/ceval.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename DEBUG macro to Py_DEBUGGuido van Rossum1996-12-301-3/+3
|
* Moved the raise logic out of the main interpreter loop to a separate function.Guido van Rossum1996-12-101-60/+127
| | | | | | | | | | | | | | | The raise logic has one additional feature: if you raise <class>, <value> where <value> is not an instance, it will construct an instance using <value> as argument. If <value> is None, <class> is instantiated without arguments. If <value> is a tuple, it is used as the argument list. This feature is intended to make it easier to upgrade code from using string exceptions to using class exceptions; without this feature, you'd have to change every raise statement from ``raise X'' to ``raise X()'' and from ``raise X, y'' to ``raise X(y)''. The latter is still the recommended form (because it has no ambiguities about the number of arguments), but this change makes the transition less painful.
* Change the Don Beaudry hack into the Don B + Jim F hack; now, if *any*Guido van Rossum1996-12-051-28/+26
| | | | | | base class is special it gets invoked. Make gcc -Wall happy.
* New permission notice, includes CNRI.Guido van Rossum1996-10-251-13/+20
|
* Raise TypeError, not KeyError, on unknown keyword argument.Guido van Rossum1996-08-191-2/+1
|
* Don't test here for negative number to float power; that belongs inGuido van Rossum1996-08-161-9/+0
| | | | floatobject.c.
* Disable support for access statementGuido van Rossum1996-08-121-0/+28
|
* Better error message if stride used on normal sequence objectGuido van Rossum1996-07-301-2/+10
|
* Changes for slice and ellipsesGuido van Rossum1996-07-301-13/+67
|
* Renamed static pow() to powerop() to avoid name conflict in some compilers.Guido van Rossum1996-06-191-4/+4
|
* Removed some done "to do" items.Guido van Rossum1996-05-241-9/+3
| | | | Changed #ifdef DEBUG slightly.
* removed sime redundant header includes and decls.Guido van Rossum1996-05-231-8/+0
|
* changes for complex and power (**) operatorGuido van Rossum1996-01-121-0/+38
|
* don't return from main loop when error occursGuido van Rossum1995-12-101-1/+2
|
* spell TraceBack with capital BGuido van Rossum1995-09-181-1/+1
|
* empty kw dict is ok for builtinsGuido van Rossum1995-08-041-1/+6
|
* fix bogus DECREF in finally clauseGuido van Rossum1995-07-281-0/+1
|
* changes for keyword args to built-in functions and classesGuido van Rossum1995-07-261-19/+43
|
* keyword arguments and faster callsGuido van Rossum1995-07-181-364/+459
|
* 3rd arg for raise; INCOMPLETE keyword parameter passing (currently ↵Guido van Rossum1995-07-071-30/+151
| | | | f(kw=value) is seen as f('kw', value))
* fix dusty debugging macrosGuido van Rossum1995-03-291-1/+1
|
* remove unused code for tp_callGuido van Rossum1995-03-221-13/+1
|
* various tuple related optimizations; remove unused b/w compat code from ceval.cGuido van Rossum1995-03-091-74/+26
|
* fix bug in try-finally with class exceptions; declare different func ↵Guido van Rossum1995-02-171-6/+7
| | | | pointers for different uses
* call __import__() with 4 args instead of 1Guido van Rossum1995-02-141-1/+51
|
* use Py_CHARMASKGuido van Rossum1995-02-101-1/+2
|
* DECREF result of run_stringGuido van Rossum1995-02-071-2/+3
|
* remove unused variableGuido van Rossum1995-01-301-1/+0
|
* allow classes as exceptionsGuido van Rossum1995-01-261-4/+26
|
* add missing INCREF in RAISE_EXCEPTIONGuido van Rossum1995-01-201-1/+2
|
* different init for __builtins__Guido van Rossum1995-01-171-2/+2
|
* use getbuiltins() everywhere, it defaults to getbuiltidict()Guido van Rossum1995-01-121-1/+2
|
* __builtins__ mods (and sys_checkinterval for ceval.c)Guido van Rossum1995-01-091-21/+25
|
* Use new instancebinop interfaceGuido van Rossum1995-01-071-18/+18
|
* Added 1995 to copyright message.Guido van Rossum1995-01-041-2/+2
| | | | | | bltinmodule.c: fixed coerce() nightmare in ternary pow(). modsupport.c (initmodule2): pass METH_FREENAME flag to newmethodobject(). pythonrun.c: move flushline() into and around print_error().
* Lots of changes, most minor (fatal() instead of abort(), use ofGuido van Rossum1995-01-021-44/+62
| | | | | | err_fetch/err_restore and so on). But... NOTE: import.c has been rewritten and all the DL stuff is now in the new file importdl.c.
* replace abort() calls by fatal()Guido van Rossum1994-11-101-14/+6
|
* * Python/ceval.c, Include/ceval.h: promote MakePendingCalls toGuido van Rossum1994-09-291-4/+33
| | | | | | | | | | global: Py_MakePendingCalls. Also guard against recursive calls * Include/classobject.h, Objects/classobject.c, Python/{ceval.c,bltinmodule.c}: entirely redone operator overloading. The rules for class instances are now much more relaxed than for other built-in types (whose coerce must still return two objects of the same type)
* * Python/ceval.c (eval_code): added registry of pending functionsGuido van Rossum1994-09-141-1/+91
| | | | | (to be used by functions that are called asynchronously, like UNIX signal handlers or Mac I/O completion routines)
* call_object: print message before abort()Guido van Rossum1994-08-301-157/+144
|
* * mpzmodule.c: cast some methods to the proper type.Guido van Rossum1993-12-171-1/+0
| | | | | | | * traceback.c (tb_print): use sys.tracebacklimit as a maximum number of traceback entries to print (default 1000). * ceval.c (printtraceback): Don't print stack trace header -- this is now done by tb_print().
* * mpzmodule.c: removed redundant mpz_print function.Guido van Rossum1993-11-051-6/+7
| | | | | | | | | | | | | | * object.[ch], bltinmodule.c, fileobject.c: changed str() to call strobject() which calls an object's __str__ method if it has one. strobject() is also called by writeobject() when PRINT_RAW is passed. * ceval.c: rationalize code for PRINT_ITEM (no change in function!) * funcobject.c, codeobject.c: added compare and hash functionality. Functions with identical code objects and the same global dictionary are equal. Code objects are equal when their code, constants list and names list are identical (i.e. the filename and code name don't count). (hash doesn't work yet since the constants are in a list and lists can't be hashed -- suppose this should really be done with a tuple now we have resizetuple!)
* * ceval.c, longobject.c, methodobject.c, listnode.c, arraymodule.c,Guido van Rossum1993-11-011-0/+1
| | | | | | pythonrun.c: added static forward declarations * pythonrun.h, ceval.h, longobject.h, node.h: removed declarations of static routines
* Several optimizations and speed improvements.Sjoerd Mullender1993-10-221-7/+5
| | | | cstubs: Use Matrix type instead of float[4][4].
* * bltinmodule.c: removed exec() built-in function.Guido van Rossum1993-10-181-0/+78
| | | | | | | * Grammar: add exec statement; allow testlist in expr statement. * ceval.c, compile.c, opcode.h: support exec statement; avoid optimizing locals when it is used * fileobject.{c,h}: add getfilename() internal function.
* * Makefile: added all: and default: targets.Guido van Rossum1993-07-051-1/+1
| | | | | | | | | | | | * many files: made some functions static; removed "extern int errno;". * frozenmain.c: fixed bugs introduced on 24 June... * flmodule.c: remove 1.5 bw compat hacks, add new functions in 2.2a (and some old functions that were omitted). * timemodule.c: added MSDOS floatsleep version . * pgenmain.c: changed exit() to goaway() and added defn of goaway(). * intrcheck.c: add hack (to UNIX only) so interrupting 3 times will exit from a hanging program. The second interrupt prints a message explaining this to the user.
* * pythonmain.c: -k option, usage message, more environment flags.Guido van Rossum1993-06-241-0/+8
| | | | | | | | | | | (the latter also in frozenmain.c) * ceval.c: global 'killprint' flag raises exception when printing an expression statement's value (useful for finding stray output) * timemodule.c: add asctime() and ctime(). Change julian date to 1-based origin (as intended and documented). * Removed unused DO_TIMES stuff from timemodule.c. Added 'epoch' and 'day0' globals (year where time.time() == 0 and day of the week the epoch started).
* * Added gmtime/localtime/mktime and SYSV timezone globals to timemodule.c.Guido van Rossum1993-06-171-0/+2
| | | | | | | | | | Added $(SYSDEF) to its build rule in Makefile. * cgensupport.[ch], modsupport.[ch]: removed some old stuff. Also changed files that still used it... And made several things static that weren't but should have been... And other minor cleanups... * listobject.[ch]: add external interfaces {set,get}listslice * socketmodule.c: fix bugs in new send() argument parsing. * sunaudiodevmodule.c: added flush() and close().
* * classobject.c: in instance_getattr, don't make a method out of aGuido van Rossum1993-05-251-19/+31
| | | | | | | | | | function found as instance data. * socketmodule.c: added 'flags' argument sendto/recvfrom, rewrite argument parsing in send/recv. * More changes related to access (terminology change: owner instead of class; allow any object as owner; local/global variables are owned by their dictionary, only class/instance data is owned by the class; "from...import *" now only imports objects with public access; etc.)
* * Lots of small changes related to access.Guido van Rossum1993-05-211-8/+49
| | | | | | | * Added "access *: ...", made access work for class methods. * Introduced subclass check: make sure that when calling ClassName.methodname(instance, ...), the instance is an instance of ClassName or of a subclass thereof (this might break some old code!)