Commit Graph

90 Commits

Author SHA1 Message Date
Guido van Rossum e13ff2e2d6 Patch by Tim Peters fixing PR#88:
Integer division can crash under Windows.
1999-09-27 17:12:47 +00:00
Guido van Rossum 51288bce48 Fix a problem with Vladimir's PyInt_Fini code: clear the free list; if
a block cannot be freed, add its free items back to the free list, and
add its valid ints back to the small_ints array if they are in range.
This is necessary to avoid leaking when Python is reinitialized later.
1999-03-19 20:30:39 +00:00
Guido van Rossum 3fce883922 Vladimir has restructured his code somewhat so that the blocks are now
represented by an explicit structure.  (There are still too many casts
in the code, but that may be unavoidable.)

Also added code so that with -vv it is very chatty about what it does.
1999-03-12 19:43:17 +00:00
Guido van Rossum da084edd38 Patch by Vladimir Marangoz to allow freeing of the allocated blocks of
integers on finalization.
1999-03-10 22:55:24 +00:00
Guido van Rossum fbbd57e4ca Added _Fini() routines to free up some memory 1997-08-05 02:16:08 +00:00
Guido van Rossum c0b618a2cc Quickly renamed the last directory. 1997-05-02 03:12:38 +00:00
Guido van Rossum 6f72f97c03 Increased buffer sizes used by hex() and oct() -- on 64-bit or 128-bit
machines, the string may get longer than 20 characters!
1997-01-14 15:43:41 +00:00
Guido van Rossum ebee0256f3 Changed hex() and oct() again, to never emit a '-' sign. 1997-01-12 19:48:03 +00:00
Guido van Rossum 80dd9b6672 Subtle change to hex/oct formatting so the largest negative number
does not receive a minus sign.
1997-01-10 17:39:30 +00:00
Guido van Rossum 541cdd84ac Fix overflow test for multiply to catch some cases it missed.
Added warning about dependency of float/complex hash on int hash.
1997-01-06 22:53:20 +00:00
Guido van Rossum 9478dd40c2 Fix core dump from pow(x,y,0).
Make gcc -Wall happy.
1996-12-06 20:14:43 +00:00
Guido van Rossum d266eb460e New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
Guido van Rossum c206c766dd fix memory leak and null pointer dereference 1995-01-10 15:23:19 +00:00
Guido van Rossum 6610ad9d6b Added 1995 to copyright message.
floatobject.c: fix hash().
methodobject.c: support METH_FREENAME flag bit.
1995-01-04 19:07:38 +00:00
Guido van Rossum d7047b395e Lots of minor changes. Note for mappingobject.c: the hash table pointer
can now be NULL.
1995-01-02 19:07:15 +00:00
Guido van Rossum bf8c0e336f mods by Andrew Kuchling to implement
pow(x,y,z) == pow(x,y)%z, but without incurring overflow
Correct problems found by THINK C 6.0
1994-08-29 12:48:32 +00:00
Guido van Rossum 2e1d433e43 Added getmaxint() so sys can initialize sys.maxint.
Added Makefile.in.
1993-12-24 10:22:45 +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 72481a3497 Changes to make range checks portable to 64-bit machines. 1993-10-26 15:21:51 +00:00
Sjoerd Mullender 842d2ccdcd intobject.c: Save references to small integers, so that they can be
shared.  The default is to save references to the integers in
	the range -1..99.  The lower limit can be set by defining
	NSMALLNEGINTS (absolute value of smallest integer to be saved)
	and NSMALLPOSINTS (1 more than the largest integer to be
	saved).
tupleobject.c: Save a reference to the empty tuple to be returned
	whenever a tuple of size 0 is requested.  Tuples of size 1
	upto, but not including, MAXSAVESIZE (default 20) are put in
	free lists when deallocated.  When MAXSAVESIZE equals 1, only
	share references to the empty tuple, when MAXSAVESIZE equals
	0, don't include the code at all and revert to the old
	behavior.
object.c: Print some more statistics when COUNT_ALLOCS is defined.
1993-10-15 16:18:48 +00:00
Sjoerd Mullender a9c3c22c33 * Extended X interface: pixmap objects, colormap objects visual objects,
image objects, and lots of new methods.
* Added counting of allocations and deallocations of builtin types if
  COUNT_ALLOCS is defined.  Had to move calls to NEWREF down in some
  files.
* Bug fix in sorting lists.
1993-10-11 12:54:31 +00:00
Guido van Rossum 9575a44575 * Microscopic corrections to make things compile on the Cray APP.
* Removed one use of $> in Makefile and warned about others.
  Added configurable lines in Makefile to change CC and AR.
1993-04-07 14:06:14 +00:00
Guido van Rossum 9bfef44d97 * Changed all copyright messages to include 1993.
* Stubs for faster implementation of local variables (not yet finished)
* Added function name to code object.  Print it for code and function
  objects.  THIS MAKES THE .PYC FILE FORMAT INCOMPATIBLE (the version
  number has changed accordingly)
* Print address of self for built-in methods
* New internal functions getattro and setattro (getattr/setattr with
  string object arg)
* Replaced "dictobject" with more powerful "mappingobject"
* New per-type functio tp_hash to implement arbitrary object hashing,
  and hashobject() to interface to it
* Added built-in functions hash(v) and hasattr(v, 'name')
* classobject: made some functions static that accidentally weren't;
  added __hash__ special instance method to implement hash()
* Added proper comparison for built-in methods and functions
1993-03-29 10:43:31 +00:00
Guido van Rossum e537240c25 * Changed many files to use mkvalue() instead of newtupleobject().
* Fixcprt.py: added [-y file] option, do only files younger than file.
* modsupport.[ch]: added vmkvalue().
* intobject.c: use mkvalue().
* stringobject.c: added "formatstring"; renamed string* to string_*;
  ceval.c: call formatstring for string % value.
* longobject.c: close memory leak in divmod.
* parsetok.c: set result node to NULL when returning an error.
1993-03-16 12:15:04 +00:00
Guido van Rossum 1899c2e055 Made builtins int(), long(), float(), oct() and hex() more generic. 1992-09-12 11:09:23 +00:00
Guido van Rossum bab9d03855 Copyright for 1992 added 1992-04-05 14:26:55 +00:00
Guido van Rossum 719f5fa86a lint fix 1992-03-27 17:31:02 +00:00
Guido van Rossum 2b16a6feff Make / and % do the same as divmod. 1992-01-19 16:28:51 +00:00
Guido van Rossum f3b351f140 Different shift implementation. 1992-01-14 18:33:22 +00:00
Guido van Rossum 3a62845094 Improved exceptions. 1991-12-10 13:57:36 +00:00
Guido van Rossum 7928cd7636 Added shift and mask ops. 1991-10-24 14:59:31 +00:00
Guido van Rossum 909336104b printobject now returns an error code 1991-06-07 16:10:43 +00:00
Guido van Rossum 0bff015ac3 Added nonzero test 1991-05-14 12:05:32 +00:00
Guido van Rossum 0046695d0c Added divmod and abs, fixed negative powers 1991-05-05 20:08:27 +00:00
Guido van Rossum f70e43a073 Added copyright notice. 1991-02-19 12:39:46 +00:00
Guido van Rossum 3f5da24ea3 "Compiling" version 1990-12-20 15:06:42 +00:00
Guido van Rossum abbda16f58 Fix zero division checks: return if it occurs! 1990-10-26 14:58:41 +00:00
Guido van Rossum 5c52b6a75a CHanged errors somewhat. 1990-10-21 22:11:03 +00:00
Guido van Rossum 165e67edae New error handling. 1990-10-14 20:02:26 +00:00
Guido van Rossum 85a5fbbdfe Initial revision 1990-10-14 12:07:46 +00:00