#1615275: clarify return object types of different tempfile factories.
diff --git a/Doc/library/tempfile.rst b/Doc/library/tempfile.rst
index cafdd05..ae1c610 100644
--- a/Doc/library/tempfile.rst
+++ b/Doc/library/tempfile.rst
@@ -34,7 +34,7 @@
.. function:: TemporaryFile([mode='w+b'[, bufsize=-1[, suffix[, prefix[, dir]]]]])
- Return a file (or file-like) object that can be used as a temporary storage
+ Return a file-like object that can be used as a temporary storage
area. The file is created using :func:`mkstemp`. It will be destroyed as soon
as it is closed (including an implicit close when the object is garbage
collected). Under Unix, the directory entry for the file is removed immediately
@@ -49,6 +49,10 @@
The *dir*, *prefix* and *suffix* parameters are passed to :func:`mkstemp`.
+ The returned object is a true file object on POSIX platforms. On other
+ platforms, it is a file-like object whose :attr:`file` attribute is the
+ underlying true file object.
+
.. function:: NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix[, prefix[, dir[, delete]]]]]])
@@ -60,6 +64,9 @@
across platforms (it can be so used on Unix; it cannot on Windows NT or later).
If *delete* is true (the default), the file is deleted as soon as it is closed.
+ The returned object is always a file-like object whose :attr:`file` attribute
+ is the underlying true file object.
+
.. versionadded:: 2.3
.. versionadded:: 2.6
@@ -76,6 +83,10 @@
The resulting file has one additional method, :func:`rollover`, which causes the
file to roll over to an on-disk file regardless of its size.
+ The returned object is a file-like object whose :attr:`_file` attribute
+ is either a :class:`StringIO` object or a true file object, depending on
+ whether :func:`rollover` has been called.
+
.. versionadded:: 2.6