Return None to signal that the module the object was defined in was not found when object has no __name__ attr but is needed to figure out location of object.
diff --git a/Lib/inspect.py b/Lib/inspect.py
index a2ea739..eca5e8c 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -383,6 +383,8 @@
if file in modulesbyfile:
return sys.modules.get(modulesbyfile[file])
main = sys.modules['__main__']
+ if not hasattr(object, '__name__'):
+ return None
if hasattr(main, object.__name__):
mainobject = getattr(main, object.__name__)
if mainobject is object: