Clarify and fix the documentation for IOBase.close()
diff --git a/Doc/library/io.rst b/Doc/library/io.rst
index 9f08c25..4554b1e 100644
--- a/Doc/library/io.rst
+++ b/Doc/library/io.rst
@@ -246,8 +246,10 @@
 
       Flush and close this stream. This method has no effect if the file is
       already closed. Once the file is closed, any operation on the file
-      (e.g. reading or writing) will raise an :exc:`IOError`. The internal
-      file descriptor isn't closed if *closefd* was False.
+      (e.g. reading or writing) will raise an :exc:`ValueError`.
+
+      As a convenience, it is allowed to call this method more than once;
+      only the first call, however, will have an effect.
 
    .. attribute:: closed