Raymond Hettinger
9376c8b5e3
Fix typo in comment.
2014-08-01 23:51:51 -07:00
Benjamin Peterson
dbc52f8a0d
check for string attribute names in old-style classes ( closes #14334 )
2012-03-16 10:58:46 -05:00
Benjamin Peterson
a7b0976c3e
PyEval_CallObject requires a tuple of args ( closes #13186 )
2011-10-15 13:43:21 -04:00
Antoine Pitrou
c83ea137d7
Untabify C files. Will watch buildbots.
2010-05-09 14:46:46 +00:00
Antoine Pitrou
a57df2cf1d
Issue #8268 : Old-style classes (not just instances) now support weak
...
references.
2010-03-31 21:32:15 +00:00
Benjamin Peterson
6fcf9b50bc
remove the check that classmethod's argument is a callable
2009-09-01 22:27:57 +00:00
Benjamin Peterson
712ee92309
generate py3k warnings on __getslice__, __delslice__, and __setslice__
...
Reviewer: Brett Cannon
2008-08-24 18:10:20 +00:00
Gregory P. Smith
dd96db63f6
This reverts r63675 based on the discussion in this thread:
...
http://mail.python.org/pipermail/python-dev/2008-June/079988.html
Python 2.6 should stick with PyString_* in its codebase. The PyBytes_* names
in the spirit of 3.0 are available via a #define only. See the email thread.
2008-06-09 04:58:54 +00:00
Christian Heimes
593daf545b
Renamed PyString to PyBytes
2008-05-26 12:51:38 +00:00
Neal Norwitz
b1d3d96374
Issue 2332: add new attribute names for instance method objects
2008-03-18 04:46:00 +00:00
Christian Heimes
3b718a79af
Implemented Martin's suggestion to clear the free lists during the garbage collection of the highest generation.
2008-02-14 12:47:33 +00:00
Christian Heimes
5b970ad483
Unified naming convention for free lists and their limits. All free lists
...
in Object/ are named ``free_list``, the counter ``numfree`` and the upper
limit is a macro ``PyName_MAXFREELIST`` inside an #ifndef block.
The chances should make it easier to adjust Python for platforms with
less memory, e.g. mobile phones.
2008-02-06 13:33:44 +00:00
Christian Heimes
6075a82243
Limit free list of method and builtin function objects to 256 entries each.
2008-02-06 12:44:34 +00:00
Jeffrey Yasskin
a26cf9b760
Make int() and long() fall back to __trunc__(). See issue 2002.
2008-02-04 01:04:35 +00:00
Guido van Rossum
9ff1a44973
Fix an edge case whereby the __del__() method of a classic class could
...
create a new weakref to the object.
2008-01-18 20:56:30 +00:00
Kristján Valur Jónsson
abe1d48d20
As per Armin Rigo's suggestion, remove special handing from intobject.c to deal with the peculiarities of classobject's implementation of the number protocol. The nb_long method of classobject now falls back to nb_int if there is no __long__ attribute present.
2007-05-07 16:46:54 +00:00
Martin v. Löwis
3a62404264
Correctly forward exception in instance_contains().
...
Fixes #1591996 . Patch contributed by Neal Norwitz.
Will backport.
2006-11-08 06:46:37 +00:00
Georg Brandl
5d59c09834
Patch #1567691 : super() and new.instancemethod() now don't accept
...
keyword arguments any more (previously they accepted them, but didn't
use them).
2006-09-30 08:43:30 +00:00
Neal Norwitz
6cbb726539
Move initialization of interned strings to before allocating the
...
object so we don't leak op. (Fixes an earlier patch to this code)
Klockwork #350
2006-08-19 04:22:33 +00:00
Neal Norwitz
af33f2d571
Can't return NULL from a void function. If there is a memory error,
...
about the best we can do is call PyErr_WriteUnraisable and go on.
We won't be able to do the call below either, so verify delstr is valid.
2006-08-14 00:59:03 +00:00
Neal Norwitz
b09f4f578f
Handle a whole lot of failures from PyString_FromInternedString().
...
Should fix most of Klocwork 234-272.
2006-08-13 18:10:28 +00:00
Neal Norwitz
1872b1c01f
Fix a couple of bugs exposed by the new __index__ code. The 64-bit buildbots
...
were failing due to inappropriate clipping of numbers larger than 2**31
with new-style classes. (typeobject.c) In reviewing the code for classic
classes, there were 2 problems. Any negative value return could be returned.
Always return -1 if there was an error. Also make the checks similar
with the new-style classes. I believe this is correct for 32 and 64 bit
boxes, including Windows64.
Add a test of classic classes too.
2006-08-12 18:44:06 +00:00
Neal Norwitz
8a87f5d37e
Patch #1538606 , Patch to fix __index__() clipping.
...
I modified this patch some by fixing style, some error checking, and adding
XXX comments. This patch requires review and some changes are to be expected.
I'm checking in now to get the greatest possible review and establish a
baseline for moving forward. I don't want this to hold up release if possible.
2006-08-12 17:03:09 +00:00
Martin v. Löwis
ab2f8f7bd5
__hash__ may now return long int; the final hash
...
value is obtained by invoking hash on the long int.
Fixes #1536021 .
2006-08-09 07:57:39 +00:00
Brett Cannon
ea3912b0da
If a classic class defined a __coerce__() method that just returned its two
...
arguments in reverse, the interpreter would infinitely recourse trying to get a
coercion that worked. So put in a recursion check after a coercion is made and
the next call to attempt to use the coerced values.
Fixes bug #992017 and closes crashers/coerce.py .
2006-06-13 21:46:41 +00:00