Commit graph

381 commits

Author SHA1 Message Date
Guido van Rossum 3952cb0725 fix mem leak (localmap in optimize) 1995-01-20 16:56:41 +00:00
Guido van Rossum d1b9393ba5 support "O&" taking an object constructor a void* 1995-01-20 16:56:02 +00:00
Guido van Rossum 1919ca7b28 add missing INCREF in RAISE_EXCEPTION 1995-01-20 16:55:14 +00:00
Guido van Rossum 10bb1c46f1 don't use function prototypes 1995-01-20 16:54:36 +00:00
Guido van Rossum 46c76a6c66 added changes for NetBSD dynamic linking; removed shared linking for NeXT 1995-01-20 16:53:54 +00:00
Guido van Rossum 7f9fa97ca2 fix import related leaks 1995-01-20 16:53:12 +00:00
Jack Jansen 5ef86d55b5 Undef strerror on the mac before redefining it 1995-01-19 12:16:44 +00:00
Guido van Rossum 97d68c03bc added getopt.c to object, permanently 1995-01-17 16:51:35 +00:00
Guido van Rossum 5c2306c44f include rename2.h 1995-01-17 16:31:21 +00:00
Guido van Rossum 2ac3bc2c05 rename method arg because of typedef conflict 1995-01-17 16:31:01 +00:00
Guido van Rossum 0865dd9ce9 fix Alpha bug in (x)range; different __builtins__ initialization 1995-01-17 16:30:22 +00:00
Guido van Rossum c3f82b6b8a nt thread support 1995-01-17 16:29:31 +00:00
Guido van Rossum b4e7e25fe6 different init for __builtins__ 1995-01-17 16:27:25 +00:00
Guido van Rossum 087579ea51 added $& to $(LIB) target for Sequent 1995-01-17 16:11:29 +00:00
Guido van Rossum 94390ec2a6 use getbuiltins() everywhere, it defaults to getbuiltidict() 1995-01-12 11:37:57 +00:00
Guido van Rossum 922d8ff803 Include rename2.h 1995-01-12 11:31:04 +00:00
Guido van Rossum 58b6873f6b fix subtle refcount big in filter() -- Tim MacKenzie 1995-01-10 17:40:55 +00:00
Guido van Rossum 5524a59b09 move coerce() from bltinmodule.c to object.c and implement builtin_coerce() differently 1995-01-10 15:26:20 +00:00
Guido van Rossum 84eaa8396e fix globals/locals defaults for eval/execfile 1995-01-10 10:47:05 +00:00
Guido van Rossum 6135a87f2b __builtins__ mods (and sys_checkinterval for ceval.c) 1995-01-09 17:53:26 +00:00
Guido van Rossum 2565bff40a Alpha OSF/1 fix 1995-01-09 17:50:47 +00:00
Guido van Rossum 970a0a20b8 api version checking 1995-01-09 17:47:20 +00:00
Guido van Rossum 6da5bfad0f remove nogus reload check 1995-01-09 17:46:45 +00:00
Guido van Rossum a0d7a23398 sys.check_interval=x -> sys.setcheckinterval(x) 1995-01-09 17:46:13 +00:00
Guido van Rossum 50620fa9b8 New newmethodobject() interface takes struct methodlist pointer
instead of individual components; initmodule3() now has doc string
argument as well
1995-01-07 12:43:18 +00:00
Guido van Rossum 1f4fa50176 Two independent chages:
(a) support import NAME.NAME...NAME;
(b) support doc strings in modules, classes and function definitions
1995-01-07 12:41:23 +00:00
Guido van Rossum 06186519e5 Use new instancebinop interface 1995-01-07 12:40:10 +00:00
Guido van Rossum 6a00cd8b89 * Python/bltinmodule.c: restructured coerce(), divmod(), pow() to
use new instancebinop interface
1995-01-07 12:39:01 +00:00
Guido van Rossum a10f512dba Grammar changed 1995-01-07 12:36:29 +00:00
Guido van Rossum 5fb1da76ff NT dlls have .pyd extension instead of .dll 1995-01-07 12:36:02 +00:00
Guido van Rossum 6d023c98b0 Added 1995 to copyright message.
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().
1995-01-04 19:12:13 +00:00
Guido van Rossum 1ae940a587 Lots of changes, most minor (fatal() instead of abort(), use of
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.
1995-01-02 19:04:15 +00:00
Sjoerd Mullender 06fe7e5c2c Added comment symbols around word after #endif. 1994-12-14 15:30:04 +00:00
Jack Jansen 599f0d1c2c - Added ability to get at strings embedded in the struct
- For the mac, added ability to get at pascal-style strings
1994-12-14 13:04:05 +00:00
Jack Jansen e00637bdcf Removed extraneous fclose() in case of .pyc file argument 1994-12-14 12:58:37 +00:00
Jack Jansen 8fd2d94e37 Added hook for better mac error messages. 1994-12-14 12:54:54 +00:00
Guido van Rossum 69d9eb9f56 replace abort() calls by fatal() 1994-11-10 22:41:15 +00:00
Guido van Rossum 363ac7d5b6 set name to <lambda> instead of None for lambdas 1994-11-10 22:40:34 +00:00
Guido van Rossum 13d0ed13c3 prevent core dump for old getargs() with NULL arg 1994-11-10 22:35:48 +00:00
Guido van Rossum c054a663eb call err_clear in err_setval 1994-11-10 22:34:33 +00:00
Guido van Rossum 030ae17582 fix pow() core dump 1994-11-10 22:33:19 +00:00
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
Guido van Rossum 2e8f8a398e Added compare operations for functions and code objects.
(Also hash, but it doesn't work yet.)
1993-11-05 10:20:10 +00:00
Guido van Rossum 094885b0f0 Must initialize 'inspect' flag 1993-11-05 10:16:09 +00:00
Guido van Rossum e77a757094 * nismodule.c: database keys and values can contain null bytes. be more
careful about these.
* arraymodule.c: added 8 byte swap; added 'i' format character; added
  reverse() method; rename read/write to fromfile/tofile.
* config.c: Set version to 0.9.9++.
* rotormodule.c (r_rand): declare k1..k5 as unsigned longs so the shifts
  will have a well-defined effect independent of word size.
* bltinmodule.c: renamed bagof() to filter().
1993-11-03 15:01:26 +00:00
Guido van Rossum b73cc04e62 * ceval.c, longobject.c, methodobject.c, listnode.c, arraymodule.c,
pythonrun.c: added static forward declarations
* pythonrun.h, ceval.h, longobject.h, node.h: removed declarations of
  static routines
1993-11-01 16:28:59 +00:00
Guido van Rossum 2586bf0a34 * rangeobject.{c,h}, bltinmodule.c: removed non-essential ops from range
object.
1993-11-01 16:21:44 +00:00
Sjoerd Mullender 615194a352 Fixed bugs in resizetuple and extended the interface.
Added ifdefs in stringobject.c for shared strings of length 1.
Renamed free_list in tupleobject.c to free_tuples.
1993-11-01 13:46:50 +00:00
Guido van Rossum dc4b93db70 * listobject.c (list_ass_slice): XDECREF instead of DECREF so
setlistslice() can be used to cut the unused part out of a freshly made
  slice (as done by bagof()).  [needed by the next mod!]
* structural changes to bagof(), map() etc.
1993-10-27 14:56:44 +00:00
Guido van Rossum 3b716046a0 Committing the correct graminit.c; also changed confusing comments in Grammar. 1993-10-27 13:25:30 +00:00
Guido van Rossum 12d12c5faf * compile.[ch]: support for lambda()
* PROTO.h, mymalloc.h: added #ifdefs for TURBOC and GNUC.
* allobjects.h: added #include "rangeobject.h"
* Grammar: added lambda_input; relaxed syntax for exec.
* bltinmodule.c: added bagof, map, reduce, lambda, xrange.
* tupleobject.[ch]: added resizetuple().
* rangeobject.[ch]: new object type to speed up range operations (not
  convinced this is needed!!!)
1993-10-26 17:58:25 +00:00