Merge 3.5 (issue #28634)
diff --git a/Lib/asyncio/base_futures.py b/Lib/asyncio/base_futures.py
index 64f7845..01259a0 100644
--- a/Lib/asyncio/base_futures.py
+++ b/Lib/asyncio/base_futures.py
@@ -27,7 +27,8 @@
     itself as duck-type compatible by setting _asyncio_future_blocking.
     See comment in Future for more details.
     """
-    return getattr(obj, '_asyncio_future_blocking', None) is not None
+    return (hasattr(obj.__class__, '_asyncio_future_blocking') and
+            obj._asyncio_future_blocking is not None)
 
 
 def _format_callbacks(cb):