Commit Graph

97 Commits

Author SHA1 Message Date
Guido van Rossum c6472e9ee1 1. Add string conversions to int(), long(), float(). (Not to complex()!)
2. Fix two bugs in complex():

   - Memory leak when using complex(classinstance) -- r was never
   DECREF'ed.

   - Conversion of the second argument, if not complex, was done using
   the type vector of the 1st.
1997-03-31 17:15:43 +00:00
Guido van Rossum 1c6a459921 Define __debug__ as 0 if -O is given, 1 otherwise. Also test for
errors in initializing the dictionary.
1997-03-11 18:43:26 +00:00
Guido van Rossum 0ae748d3c4 Changes for Lee Busby's SIGFPE patch set.
New file pyfpe.c and exception FloatingPointError.
Surround some f.p. operations with PyFPE macro brackets.
1997-02-14 22:58:07 +00:00
Guido van Rossum e8811f85ed Added intern() function. 1997-02-14 15:48:05 +00:00
Guido van Rossum 8d75161671 Intern the string "__complex__". 1997-01-18 08:04:16 +00:00
Guido van Rossum 1a2c5cbcc4 Add unistd.h to make gcc -Wall happy. 1996-12-10 15:37:36 +00:00
Guido van Rossum ed0af8fe70 Support __complex__ method on instances, for complex() conversion.
Keep gcc -Wall happy.
1996-12-05 23:18:18 +00:00
Guido van Rossum d266eb460e New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
Guido van Rossum b75fba04c7 Forget about Ellipses b/w compatibility. 1996-10-16 04:18:36 +00:00
Guido van Rossum e449af7da9 Ellipses -> Ellipsis rename (the dictionary really says that it should
be Ellipsis!).
Bumped the API version because a linker-visible symbol is affected.
Old C code will still compile -- there's a b/w compat macro.
Similarly, old Python code will still run, builtin exports both
Ellipses and Ellipsis.
1996-10-11 16:25:41 +00:00
Guido van Rossum b072150d7f Stupid bug: complex(x,y) would yield x+xj 1996-09-07 15:55:27 +00:00
Guido van Rossum 79d96d6bff Don't die in resizestring() on filter(<func>, ""). 1996-08-16 20:44:34 +00:00
Guido van Rossum fe4b6ee775 Include mymath.h instead of declaring prototypes for math functions.
Fix leak and unchecked error in complex().
1996-08-08 18:49:41 +00:00
Guido van Rossum 6ffd553899 Add 'Ellipses' object. 1996-07-30 18:37:55 +00:00
Guido van Rossum 8861b74445 Changes for slice and ellipses 1996-07-30 16:49:37 +00:00
Guido van Rossum 530956d247 Py_complex; and WITHOUT_COMPLEX added to getargs.c 1996-07-21 02:27:43 +00:00
Guido van Rossum 795ba583f2 Removed some redundant header includes.
dir(object) now returns object.__dict__.keys() even if __dict__ is not
a dictionary.
1996-05-23 22:49:07 +00:00
Guido van Rossum d17057745c Add list() method, analogous to tuple(). 1996-04-09 02:41:06 +00:00
Guido van Rossum c96ef6ab9e properly initialize optional arguments to apply() 1996-01-26 20:44:30 +00:00
Guido van Rossum 8a5c5d277e changes for complex numbers 1996-01-12 01:09:56 +00:00
Guido van Rossum b7b45627e8 avoid resize of 0-length tuple 1995-08-04 04:07:45 +00:00
Guido van Rossum 53bb7fff11 be more suspicious of getlocals() 1995-07-26 16:26:31 +00:00
Guido van Rossum 681d79aaf3 keyword arguments and faster calls 1995-07-18 14:51:37 +00:00
Guido van Rossum 32120311ed rename arglist to alist (conflict with new grammar symbol) 1995-07-10 13:52:21 +00:00
Guido van Rossum 872537cc86 added locals() and globals(); [raw_]input() uses readline() 1995-07-07 22:43:42 +00:00
Guido van Rossum 8a1e8eb62f fix bogus test for negative float 1995-02-18 14:51:32 +00:00
Guido van Rossum 24c137432c call __import__() with 4 args instead of 1 1995-02-14 09:42:43 +00:00
Guido van Rossum 2165158ab3 test for float to the float power here 1995-02-10 16:57:16 +00:00
Guido van Rossum a6f6050229 moved callable() to object.c 1995-01-26 00:39:50 +00:00
Guido van Rossum 7f9fa97ca2 fix import related leaks 1995-01-20 16:53:12 +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 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 6a00cd8b89 * Python/bltinmodule.c: restructured coerce(), divmod(), pow() to
use new instancebinop interface
1995-01-07 12:39:01 +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
Guido van Rossum 030ae17582 fix pow() core dump 1994-11-10 22:33:19 +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 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 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 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 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 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 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 2586bf0a34 * rangeobject.{c,h}, bltinmodule.c: removed non-essential ops from range
object.
1993-11-01 16:21:44 +00:00