bpo-30167: Remove __cached__ from __main__ when removing __file__ (GH-7415)

diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 2d5dc88..9b6371d 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -434,8 +434,14 @@
     Py_DECREF(v);
     ret = 0;
   done:
-    if (set_file_name && PyDict_DelItemString(d, "__file__"))
-        PyErr_Clear();
+    if (set_file_name) {
+        if (PyDict_DelItemString(d, "__file__")) {
+            PyErr_Clear();
+        }
+        if (PyDict_DelItemString(d, "__cached__")) {
+            PyErr_Clear();
+        }
+    }
     Py_XDECREF(m);
     return ret;
 }