Commit Graph

290 Commits

Author SHA1 Message Date
Guido van Rossum 42a24ef2d7 add getargs.o:getargs.c rule 1994-10-11 15:08:39 +00:00
Guido van Rossum a44031031c Plug memory leak for code objects 1994-10-05 12:24:16 +00:00
Guido van Rossum 180d7b4d55 * Python/ceval.c, Include/ceval.h: promote MakePendingCalls to
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)
1994-09-29 09:45:57 +00:00
Guido van Rossum fe3f1a256b * Python/{modsupport.c,getargs.c,Makefile.in},
Include/modsupport.h: moved getargs() to its own file and
	re-implemented it entirely to support optional arguments, multiple
	arguments without surrounding parentheses
	(when called as newgetargs()), and better error messages
1994-09-29 09:42:55 +00:00
Guido van Rossum 6989e54ebf * Python/errors.c (err_clear): clear interpreter stack trace 1994-09-29 09:39:39 +00:00
Guido van Rossum 83dd6c319e * Python/pythonrun.c: add string "Python" to fatal error message 1994-09-29 09:38:33 +00:00
Guido van Rossum a66e25dfa3 * Python/pythonmain.c: fatal error if can't alloc mem for -c
string
1994-09-29 09:38:18 +00:00
Guido van Rossum bfd5d755a0 * Python/traceback.c: security fix -- check for buffer oveflow
before concatenating sys.path item and module name
1994-09-29 09:38:04 +00:00
Guido van Rossum 6c849697fd Fix various potential buffer overrun problems. 1994-09-26 15:47:17 +00:00
Guido van Rossum 798199d8a6 * Python/pythonrun.c (print_error): print only last line of
multi-line source line
1994-09-19 08:08:50 +00:00
Guido van Rossum a96720907a * Python/ceval.c (eval_code): added registry of pending functions
(to be used by functions that are called asynchronously, like
	UNIX signal handlers or Mac I/O completion routines)
1994-09-14 13:31:22 +00:00
Guido van Rossum fdef271550 * Import/pythonrun.h, Python/{import,pythonrun}.c,
mac/macsetfiletype.c: changes by Jack to execute .pyc file passed
	as command line argument.  On the Mac .pyc files are given a
	special type so they can be double-clicked
1994-09-14 13:31:04 +00:00
Guido van Rossum ae311bd503 Mods for HP-UX dynamic loading. 1994-09-12 10:39:56 +00:00
Guido van Rossum 1662dd5a3d added Py_AtExit() -- register cleanup functions for C modules 1994-09-07 14:38:28 +00:00
Guido van Rossum e4ab6475f1 * Python/getmtime.c: Remove mac specifics (Mac subdirectory has
its own version now)
* Python/bltinmodule.c (builtin_tuple): use pre-existing
listtuple(v) for lists
1994-08-30 12:38:05 +00:00
Guido van Rossum 9717991b78 Merge back to main trunk 1994-08-30 09:33:45 +00:00
Guido van Rossum 1d5735e846 Merge back to main trunk 1994-08-30 08:27:36 +00:00
Guido van Rossum e59214ed91 call_object: print message before abort() 1994-08-30 08:01:59 +00:00
Guido van Rossum 74e6a118ca * Python/import.c: support *.o/*.so as alternative for
*module.o/*module.so

        * Python/import.c: if initializing a module did not enter the
        module into sys.modules, it may have raised an exception -- don't
        override this exception.

Merged NT changes

        * Python/import.c: add lost NT-specific code back in

Fixed NT changes
1994-08-29 12:54:38 +00:00
Guido van Rossum 14144fcdfd Added delattr() 1994-08-29 12:53:40 +00:00
Guido van Rossum cae027b298 * Python/bltinmodule.c: added tuple() builtin 1994-08-29 12:53:11 +00:00
Guido van Rossum df05ac6dfb Python/bltinmodule.c: mods by Andrew Kuchling to implement
pow(x,y,z) == pow(x,y)%z, but without incurring overflow
1994-08-29 12:52:37 +00:00
Guido van Rossum 2d9518585c * Python/bltinmodule.c (builtin_vars): correct typo in error msg 1994-08-29 12:52:16 +00:00
Guido van Rossum a110aa658b * Python/pythonrun.c (print_error): added INCREF/DECREF pair --
the exception returned by a syntax error (when reported) would
        contain an object with refcnt zero!
MPW changes
1994-08-29 12:50:44 +00:00
Guido van Rossum 4ca6c9db81 * Python/compile.c (com_argdefs, com_arglist): avoid referencing
CHILD(n,i) for i >= NCH(n)
1994-08-29 12:16:12 +00:00
Guido van Rossum 3a24181837 err_clear: clear interpreter stack trace 1994-08-29 12:14:12 +00:00
Guido van Rossum 13836d9e6d add function name to traceback info
MPW fixes
1994-08-29 12:09:58 +00:00
Guido van Rossum ba941eba67 MPW changes 1994-08-29 10:43:12 +00:00
Guido van Rossum 24f4850377 errors.c: clear traceback too.
Makefile.in: remove lib*.a before creating new one.
1994-08-19 15:37:11 +00:00
Guido van Rossum 14aa5da824 version.c is no longer... 1994-08-18 16:03:36 +00:00
Guido van Rossum b6775db241 Merge alpha100 branch back to main trunk 1994-08-01 11:34:53 +00:00
Guido van Rossum abe173a225 Replace intrcheck() by sigcheck() in many places.
In Pythonrun, tirn off SIGPIPE and move signal handlers elsewhere.
In ceval.c, also move locals_2_fast/ fast_2_locals to frameobject.c,
replaced local variable trace by f->f_trace, got rid of unused
mergelocals() and unneeded calls to fast_2_locals, return the variable
name on "fast variable not found", AND use "__call__" method if it
exists to call an inmstance.  Whew!
1994-06-03 15:58:29 +00:00
Guido van Rossum 6f5f8ddeaf Fix waiting for children -- save ppid in pidlist as well. 1994-05-30 13:39:05 +00:00
Guido van Rossum e944da8916 ceval.c: dict of local mapping is now a tuple
compile.c: lists and dictionary in code objects become tuples
import.c: bump MAGIC
thread*.[ch]: added thread_ident() function
version.c: added '++' to version number and bumped date
1994-05-23 12:43:41 +00:00
Guido van Rossum b98b1b3deb Tim's changes; removed some remaining non-functional ifdefs 1994-05-11 08:42:04 +00:00
Guido van Rossum 2c8cb9f3d2 Split thread.c into a number of system-specific files.
Added Tim Peters' pthread version.
1994-05-09 15:12:46 +00:00
Guido van Rossum 871b805a04 New version handles -o<string> same as -o <string> 1994-04-28 12:33:58 +00:00
Guido van Rossum 2508ade19e A getopt.c for your amusement 1994-04-14 14:08:22 +00:00
Guido van Rossum 8e454f3858 Misc changes. 1993-12-24 10:32:14 +00:00
Guido van Rossum be0e9420a1 New files. 1993-12-24 10:32:00 +00:00
Guido van Rossum 7d6aa51b56 * rangeobject.[ch], bltinmodule.c: incorporate new version of range
object (unchanged from source except "range" -> "xrange").
1993-12-21 22:50:31 +00:00
Guido van Rossum b898bd29b0 New file 1993-12-20 10:43:53 +00:00
Guido van Rossum 67a5fdbcc2 * mpzmodule.c: cast some methods to the proper type.
* 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().
1993-12-17 12:09:14 +00:00
Sjoerd Mullender 66bca326cb Port to Solaris 2.3. 1993-12-03 16:54:45 +00:00
Guido van Rossum 57531fea90 change syntactical position of lambdef (was an atom, now is a test) 1993-11-30 14:57:42 +00:00
Guido van Rossum 590baa4a7a * 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.
1993-11-30 13:40:46 +00:00
Guido van Rossum b376a4ad18 * timemodule.c: Add hack for Solaris 2.
* posixmodule.c: don't prototype getcwd() -- it's not portable...
* mappingobject.c: double-check validity of last_name_char in
  dict{lookup,insert,remove}.
* arraymodule.c: need memmove only for non-STDC Suns.
* Makefile: comment out HTML_LIBS and XT_USE by default
* pythonmain.c: don't prototype getopt() -- it's not standardized
* socketmodule.c: cast flags arg to {get,set}sockopt() and addrbuf arg to
  recvfrom() to (ANY*).
* pythonrun.c (initsigs): fix prototype, make it static
* intobject.c (LONG_BIT): only #define it if not already defined
* classobject.[ch]: remove all references to unused instance_convert()
* mappingobject.c (getmappingsize): Don't return NULL in int function.
1993-11-23 17:53:17 +00:00
Guido van Rossum c45611d0e3 * import.c (get_module): total rewrite, to ensure proper search order: for
each dir in sys.path, try each possible extension.  (Note: C extensions
  are loaded before Python modules in the same directory, to allow having
  a C version used when dynamic loading is supported and a Python version
  as a back-up.)
* import.c (reload_module): test for error from getmodulename()
* moduleobject.c: implement module name as dict entry '__name__' instead
  of special-casing it in module_getattr(); this way a module (or
  function!) can access its own module name, and programs that know what
  they are doing can rename modules.
* stdwinmodule.c (initstdwin): strip ".py" suffix of argv[0].
1993-11-17 22:58:56 +00:00
Guido van Rossum a3d78fb268 * posixmodule.c: added set{uid,gid}.
* {tuple,list,mapping,array}object.c: call printobject with 0 for flags
* compile.c (parsestr): use quote instead of '\'' at one crucial point
* arraymodule.c (array_getattr): Added __members__ attribute
1993-11-10 09:23:53 +00:00
Guido van Rossum c600411755 * mpzmodule.c: removed redundant mpz_print function.
* 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!)
1993-11-05 10:22:19 +00:00