Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
c992fafd
Commit
c992fafd
authored
Nov 04, 2012
by
Mark Dickinson
Browse files
Options
Browse Files
Download
Plain Diff
Issue #16402: Merge fix from 3.3
parents
729eda4a
1321edaa
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
5 deletions
+17
-5
Lib/test/test_range.py
Lib/test/test_range.py
+9
-0
Misc/NEWS
Misc/NEWS
+3
-0
Objects/rangeobject.c
Objects/rangeobject.c
+5
-5
No files found.
Lib/test/test_range.py
View file @
c992fafd
...
...
@@ -312,6 +312,15 @@ class RangeTest(unittest.TestCase):
self
.
assertRaises
(
TypeError
,
range
,
IN
())
# Test use of user-defined classes in slice indices.
self
.
assertEqual
(
range
(
10
)[:
I
(
5
)],
range
(
5
))
with
self
.
assertRaises
(
RuntimeError
):
range
(
0
,
10
)[:
IX
()]
with
self
.
assertRaises
(
TypeError
):
range
(
0
,
10
)[:
IN
()]
def
test_count
(
self
):
self
.
assertEqual
(
range
(
3
).
count
(
-
1
),
0
)
self
.
assertEqual
(
range
(
3
).
count
(
0
),
1
)
...
...
Misc/NEWS
View file @
c992fafd
...
...
@@ -10,6 +10,9 @@ What's New in Python 3.4.0 Alpha 1?
Core and Builtins
-----------------
- Issue #16402: When slicing a range, fix shadowing of exceptions from
__index__.
- Issue #16336: fix input checking in the surrogatepass error handler.
Patch by Serhiy Storchaka.
...
...
Objects/rangeobject.c
View file @
c992fafd
...
...
@@ -331,11 +331,11 @@ compute_slice_element(PyObject *obj)
if
(
PyIndex_Check
(
obj
))
{
result
=
PyNumber_Index
(
obj
);
}
}
if
(
result
==
NULL
)
{
PyErr_SetString
(
PyExc_TypeError
,
"slice indices must be integers or "
"None or have an __index__ method"
);
else
{
PyErr_SetString
(
PyExc_TypeError
,
"slice indices must be integers or "
"None or have an __index__ method"
);
}
}
return
result
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment