ignore classic classes
diff --git a/Objects/abstract.c b/Objects/abstract.c
index c2d8db7..99b22db 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -107,6 +107,8 @@
 		PyErr_Clear();
 	}
 
+	if (PyInstance_Check(o))
+		return defaultvalue;
 	/* try o.__length_hint__() */
         hintmeth = _PyObject_LookupSpecial(o, "__length_hint__", &hintstrobj);
 	if (hintmeth == NULL)