Issue #10180: Pickling file objects is now explicitly forbidden, since
unpickling them produced nonsensical results.
diff --git a/Lib/_pyio.py b/Lib/_pyio.py
index 83bce70..87c833c 100644
--- a/Lib/_pyio.py
+++ b/Lib/_pyio.py
@@ -747,6 +747,10 @@
     def mode(self):
         return self.raw.mode
 
+    def __getstate__(self):
+        raise TypeError("can not serialize a '{0}' object"
+                        .format(self.__class__.__name__))
+
     def __repr__(self):
         clsname = self.__class__.__name__
         try: