Benjamin Peterson
1aca78da62
merge 3.3
2014-03-14 21:54:41 -05:00
Benjamin Peterson
45c9dceb56
fix c89 declaration order
2014-03-14 21:53:51 -05:00
Benjamin Peterson
dfa822811a
merge 3.3
2014-03-14 21:47:36 -05:00
Benjamin Peterson
041c38a790
don't do pointer arithmetic with signed numbers
2014-03-14 21:47:23 -05:00
Serhiy Storchaka
c836a28cc1
Issue #17576 : Removed deprecation warnings added in changeset 618cca51a27e.
2013-12-14 21:07:09 +02:00
Serhiy Storchaka
c4f3212abc
Issue #17576 : Deprecation warning emitted now when __int__() or __index__()
...
return not int instance. Introduced _PyLong_FromNbInt() and refactored
PyLong_As*() functions.
2013-12-11 21:26:36 +02:00
Serhiy Storchaka
31a655411a
Issue #17576 : Deprecation warning emitted now when __int__() or __index__()
...
return not int instance. Introduced _PyLong_FromNbInt() and refactored
PyLong_As*() functions.
2013-12-11 21:07:54 +02:00
Christian Heimes
d3afe781b1
Silence expression result unused warnings with clang.
...
The PyObject_INIT() macros returns obj:
../cpython/Objects/methodobject.c:32:23: warning: expression result unused [-Wunused-value]
PyObject_INIT(op, &PyCFunction_Type);
^~
../cpython/Include/objimpl.h:139:69: note: expanded from macro 'PyObject_INIT'
( Py_TYPE(op) = (typeobj), _Py_NewReference((PyObject *)(op)), (op) )
^
1 warning generated.
2013-12-04 09:27:47 +01:00
Serhiy Storchaka
c679227e31
Issue #1772673 : The type of `char*` arguments now changed to `const char*`.
2013-10-19 21:03:34 +03:00
Tim Peters
9259c21a63
Issue #19171 : speed some cases of 3-argument long pow().
...
Reduce the base by the modulus when the base is larger than
the modulus. This can unboundedly speed the "startup costs"
of doing modular exponentiation, particularly in cases where
the base is much larger than the modulus. Original patch
by Armin Rigo, inspired by https://github.com/pyca/ed25519 .
Merged from 3.3.
2013-10-05 16:55:38 -05:00
Tim Peters
81a93159d7
Issue #19171 : speed some cases of 3-argument long pow().
...
Reduce the base by the modulus when the base is larger than
the modulus. This can unboundedly speed the "startup costs"
of doing modular exponentiation, particularly in cases where
the base is much larger than the modulus. Original patch
by Armin Rigo, inspired by https://github.com/pyca/ed25519 .
2013-10-05 16:53:52 -05:00
Serhiy Storchaka
46e1ce214b
Issue #18783 : Removed existing mentions of Python long type in docstrings,
...
error messages and comments.
2013-08-27 20:17:03 +03:00
Serhiy Storchaka
9594942716
Issue #18783 : Removed existing mentions of Python long type in docstrings,
...
error messages and comments.
2013-08-27 19:40:23 +03:00
Antoine Pitrou
9ed5f27266
Issue #18722 : Remove uses of the "register" keyword in C code.
2013-08-13 20:18:52 +02:00
Serhiy Storchaka
579ddc2fd4
Issue #16741 : Fix an error reporting in int().
2013-08-03 21:14:05 +03:00
Serhiy Storchaka
f6d0aeeadc
Issue #16741 : Fix an error reporting in int().
2013-08-03 20:55:06 +03:00
Mark Dickinson
02515f7a3a
Minor consistency fixes for some longobject.c exception messages:
...
- replace 'long int' / 'long' by 'int'
- fix capitalization of "Python" in PyLong_AsUnsignedLong
- "is too large" -> "too large", for consistency with other messages.
2013-08-03 12:08:22 +01:00
Victor Stinner
1c8f059019
Issue #18520 : Add a new PyStructSequence_InitType2() function, same than
...
PyStructSequence_InitType() except that it has a return value (0 on success,
-1 on error).
* PyStructSequence_InitType2() now raises MemoryError on memory allocation failure
* Fix also some calls to PyDict_SetItemString(): handle error
2013-07-22 22:24:54 +02:00
Victor Stinner
08a80b11ad
longobject.c: add an assertion to ensure that MEDIUM_VALUE() is only called on
...
small integers (0 or 1 digit)
2013-07-17 22:33:42 +02:00
Victor Stinner
8aed6f1c7d
Issue #18408 : Rewrite NEGATE() macro in longobject.c to handle PyLong_FromLong() failure
2013-07-17 22:31:17 +02:00
Victor Stinner
640c35ce13
Reuse Py_MIN and Py_MAX macros: remove duplicate MIN/MAX macros
...
multiprocessing.h: remove unused MIN and MAX macros
2013-06-04 23:14:37 +02:00
Victor Stinner
8f674ccd64
Close #17694 : Add minimum length to _PyUnicodeWriter
...
* Add also min_char attribute to _PyUnicodeWriter structure (currently unused)
* _PyUnicodeWriter_Init() has no more argument (except the writer itself):
min_length and overallocate must be set explicitly
* In error handlers, only enable overallocation if the replacement string
is longer than 1 character
* CJK decoders don't use overallocation anymore
* Set min_length, instead of preallocating memory using
_PyUnicodeWriter_Prepare(), in many decoders
* _PyUnicode_DecodeUnicodeInternal() checks for integer overflow
2013-04-17 23:02:17 +02:00
Antoine Pitrou
8ad5b07ccb
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag), mpdecimal (needs to build without Python.h).
2013-02-09 23:16:51 +01:00
Antoine Pitrou
c73c561181
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag), mpdecimal (needs to build without Python.h).
2013-02-09 23:14:42 +01:00
Antoine Pitrou
4de7457009
Issue #17173 : Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.
...
I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag).
2013-02-09 23:11:27 +01:00
Mark Dickinson
07c7136524
Issue #16772 : in int(x, base), non-integer bases must have an __index__ method.
2013-01-27 10:17:52 +00:00
Serhiy Storchaka
9101e23ff6
Issue #15989 : Fix several occurrences of integer overflow
...
when result of PyLong_AsLong() narrowed to int without checks.
This is a backport of changesets 13e2e44db99d and 525407d89277.
2013-01-19 12:41:45 +02:00
Serhiy Storchaka
441d30fac7
Issue #15989 : Fix several occurrences of integer overflow
...
when result of PyLong_AsLong() narrowed to int without checks.
This is a backport of changesets 13e2e44db99d and 525407d89277.
2013-01-19 12:26:26 +02:00
Serhiy Storchaka
7898043868
Issue #15989 : Fix several occurrences of integer overflow
...
when result of PyLong_AsLong() narrowed to int without checks.
2013-01-15 01:12:17 +02:00
Serhiy Storchaka
c819b077bb
Issue #16761 : Raise TypeError when int() called with base argument only.
2012-12-28 10:09:54 +02:00
Serhiy Storchaka
00e2843115
Issue #16761 : Raise TypeError when int() called with base argument only.
2012-12-28 10:02:42 +02:00
Serhiy Storchaka
0b386d5247
Issue #16761 : Raise TypeError when int() called with base argument only.
2012-12-28 09:42:11 +02:00
Benjamin Peterson
513762fe9c
use more specific type
2012-12-26 16:43:33 -06:00
Gregory P. Smith
a689e524e7
Test for issue16772 and redoes the previous fix to accept __index__-aware
...
objects as the base by using PyNumber_AsSsize_t similar to round().
2012-12-25 22:38:32 -08:00
Gregory P. Smith
4fbbf8c0a3
Fixes issue #16772 : int() constructor second argument (base) must be an int.
...
Consistent with the behavior in Python 2.
2012-12-25 13:05:31 -08:00
Mark Dickinson
e453e4c007
Issue 16280: Drop questionable special-casing of null pointer in PyLong_FromVoidPtr.
2012-10-18 22:18:42 +01:00
Mark Dickinson
5cb65917e1
Issue #16277 : merge fix from 3.3
2012-10-18 19:53:45 +01:00
Mark Dickinson
44362a88ad
Issue #16277 : merge fix from 3.2
2012-10-18 19:53:28 +01:00
Mark Dickinson
91044799f7
Issue #16277 : in PyLong_FromVoidPtr, add missing branch for sizeof(void*) <= sizeof(long).
2012-10-18 19:21:43 +01:00
Christian Heimes
743e0cd6b5
Issue #16166 : Add PY_LITTLE_ENDIAN and PY_BIG_ENDIAN macros and unified
...
endianess detection and handling.
2012-10-17 23:52:17 +02:00
Chris Jerdonek
4a7df9aba9
Issue #14783 : Merge changes from 3.3.
2012-10-07 15:02:16 -07:00
Chris Jerdonek
042fa653ab
Issue #14783 : Merge changes from 3.2.
2012-10-07 14:56:27 -07:00
Chris Jerdonek
83fe2e1c22
Issue #14783 : Improve int() docstring and also str(), range(), and slice().
...
This commit rewrites the docstring for int() to incorporate the documentation
changes made in issue #16036 . It also switches the docstrings for int(),
str(), range(), and slice() to use multi-line signatures.
2012-10-07 14:48:36 -07:00
Mark Dickinson
cf46d62fcb
Issue #16096 : port fix from 3.3
2012-10-06 18:50:19 +01:00
Mark Dickinson
fc9adb62fb
Issue #16096 : Fix signed overflow in Objects/longobject.c. Thanks Serhiy Storchaka.
2012-10-06 18:50:02 +01:00
Victor Stinner
9cc98c93a7
long_to_decimal_string_internal() doesn't need to write the final NULL character
2012-10-04 02:43:02 +02:00
Mark Dickinson
5710c2a3e8
Issue 15959: Merge from 3.2.
2012-09-20 21:30:34 +01:00
Mark Dickinson
c286e58044
Issue 15959: Fix type mismatch for quick{_neg}_int_allocs. Thanks Serhiy Storchaka.
2012-09-20 21:29:28 +01:00
Christian Heimes
7ae251a025
Fix out of bounds read in long_new() for empty bytes with an explicit base. int(b'', somebase) calls PyLong_FromString() with char* of length 1 but the function accesses the first argument at offset 1. CID 715359
2012-09-12 15:32:06 +02:00
Christian Heimes
79b97ee2ab
Fix out of bounds read in long_new() for empty bytes with an explicit base. int(b'', somebase) calls PyLong_FromString() with char* of length 1 but the function accesses the first argument at offset 1. CID 715359
2012-09-12 15:31:43 +02:00