Skip to content

Commit

Permalink
DOC: Better report integer division overflow (numpy#21506)
Browse files Browse the repository at this point in the history
  • Loading branch information
ganesh-k13 committed Sep 14, 2022
1 parent 5f94eb8 commit 3a2d009
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions doc/release/upcoming_changes/21506.change.rst
@@ -0,0 +1,18 @@
Better reporting of integer division overflow
---------------------------------------------

Integer division overflow of scalars and arrays used to provide a ``RuntimeWarning``
and the return value was undefined leading to crashes at rare occasions::

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: divide by zero encountered in floor_divide
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=int32)

Integer division overflow now returns the input dtype's minimum value and raise the
following ``RuntimeWarning``::

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: overflow encountered in floor_divide
array([-2147483648, -2147483648, -2147483648, -2147483648, -2147483648,
-2147483648, -2147483648, -2147483648, -2147483648, -2147483648],
dtype=int32)

0 comments on commit 3a2d009

Please sign in to comment.