Issue #17177: Stop using imp in multiprocessing
diff --git a/Lib/multiprocessing/forking.py b/Lib/multiprocessing/forking.py
index 8841e4e..d06036d 100644
--- a/Lib/multiprocessing/forking.py
+++ b/Lib/multiprocessing/forking.py
@@ -449,8 +449,8 @@
         elif main_name != 'ipython':
             # Main modules not actually called __main__.py may
             # contain additional code that should still be executed
-            import imp
             import importlib
+            import types
 
             if main_path is None:
                 dirs = None
@@ -465,7 +465,7 @@
             # since that would execute 'if __name__ == "__main__"'
             # clauses, potentially causing a psuedo fork bomb.
             loader = importlib.find_loader(main_name, path=dirs)
-            main_module = imp.new_module(main_name)
+            main_module = types.ModuleType(main_name)
             try:
                 loader.init_module_attrs(main_module)
             except AttributeError:  # init_module_attrs is optional