diff --git a/Lib/imp.py b/Lib/imp.py --- a/Lib/imp.py +++ b/Lib/imp.py @@ -7,10 +7,16 @@ """ # (Probably) need to stay in _imp from _imp import (lock_held, acquire_lock, release_lock, - load_dynamic, get_frozen_object, is_frozen_package, + get_frozen_object, is_frozen_package, init_builtin, init_frozen, is_builtin, is_frozen, _fix_co_filename) +try: + from _imp import load_dynamic +except ImportError: + # platform doesn't support dynamic loading + load_dynamic = None + # Directly exposed by this module from importlib._bootstrap import new_module from importlib._bootstrap import cache_from_source, source_from_cache @@ -160,7 +166,7 @@ return load_source(name, filename, file) elif type_ == PY_COMPILED: return load_compiled(name, filename, file) - elif type_ == C_EXTENSION: + elif type_ == C_EXTENSION and load_dynamic is not None: return load_dynamic(name, filename, file) elif type_ == PKG_DIRECTORY: return load_package(name, filename)