diff --git a/Lib/test/test_types.py b/Lib/test/test_types.py
index 4adbb40..7e238df 100644
--- a/Lib/test/test_types.py
+++ b/Lib/test/test_types.py
@@ -256,6 +256,12 @@
         yield i
 vereq(list(tuple(f())), range(1000))
 
+# Verify that __getitem__ overrides are recognized by __iter__
+class T(tuple):
+  def __getitem__(self, key):
+     return str(key) + '!!!'
+vereq(iter(T()).next(), '0!!!')
+
 print '6.5.3 Lists'
 # calling built-in types without argument must return empty
 if list() != []: raise TestFailed,'list() does not return []'
@@ -447,6 +453,12 @@
 a[::2] = tuple(range(5))
 vereq(a, [0, 1, 1, 3, 2, 5, 3, 7, 4, 9])
 
+# Verify that __getitem__ overrides are recognized by __iter__
+class L(list):
+  def __getitem__(self, key):
+     return str(key) + '!!!'
+vereq(iter(L()).next(), '0!!!')
+
 
 print '6.6 Mappings == Dictionaries'
 # calling built-in types without argument must return empty
diff --git a/Objects/listobject.c b/Objects/listobject.c
index 047c6ec..ae2b549 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -2375,6 +2375,8 @@
 		PyErr_BadInternalCall();
 		return NULL;
 	}
+	if (seq->ob_type->tp_as_sequence->sq_item != list_item)
+		return PySeqIter_New(seq);
 	it = PyObject_GC_New(listiterobject, &PyListIter_Type);
 	if (it == NULL)
 		return NULL;
diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c
index 282da3e..645480c 100644
--- a/Objects/tupleobject.c
+++ b/Objects/tupleobject.c
@@ -753,6 +753,8 @@
 		PyErr_BadInternalCall();
 		return NULL;
 	}
+	if (seq->ob_type->tp_as_sequence->sq_item != tupleitem)
+		return PySeqIter_New(seq);
 	it = PyObject_GC_New(tupleiterobject, &PyTupleIter_Type);
 	if (it == NULL)
 		return NULL;
