@@ -1753,7 +1753,7 @@ def _generate_range_overflow_safe(endpoint, periods, stride,
1753
1753
# GH#14187 raise instead of incorrectly wrapping around
1754
1754
assert side in ['start' , 'end' ]
1755
1755
1756
- i64max = np .iinfo (np .int64 ).max
1756
+ i64max = np .uint64 ( np . iinfo (np .int64 ).max )
1757
1757
msg = ('Cannot generate range with {side}={endpoint} and '
1758
1758
'periods={periods}'
1759
1759
.format (side = side , endpoint = Timestamp (endpoint ), periods = periods ))
@@ -1793,7 +1793,7 @@ def _generate_range_overflow_safe_signed(endpoint, periods, stride, side):
1793
1793
addend = np .int64 (periods ) * np .int64 (stride )
1794
1794
try :
1795
1795
# easy case with no overflows
1796
- return np .int64 (endpoint ) + addend
1796
+ return np .int64 (endpoint ) + np . int64 ( addend )
1797
1797
except (FloatingPointError , OverflowError ):
1798
1798
# with endpoint negative and addend positive we risk
1799
1799
# FloatingPointError; with reversed signed we risk OverflowError
@@ -1810,10 +1810,10 @@ def _generate_range_overflow_safe_signed(endpoint, periods, stride, side):
1810
1810
return result
1811
1811
else :
1812
1812
return _generate_range_recurse (endpoint , periods ,
1813
- np .abs (stride ), side )
1813
+ np .int64 ( np . abs (stride ) ), side )
1814
1814
elif stride < 0 and endpoint > 0 :
1815
1815
return _generate_range_recurse (np .uint64 (endpoint ), periods ,
1816
- np .abs (stride ), side )
1816
+ np .int64 ( np . abs (stride ) ), side )
1817
1817
1818
1818
try :
1819
1819
other_end = checked_add_with_arr (np .int64 (endpoint ),
0 commit comments