diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index a420974..4b1cbc6 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -964,11 +964,15 @@
 .. function:: round(x[, n])
 
    Return the floating point value *x* rounded to *n* digits after the decimal
-   point.  If *n* is omitted, it defaults to zero.  Values are rounded to the
+   point.  If *n* is omitted, it defaults to zero.  Delegates to
+   ``x.__round__(n)``.
+
+   For the built-in types supporting :func:`round`, values are rounded to the
    closest multiple of 10 to the power minus *n*; if two multiples are equally
    close, rounding is done toward the even choice (so, for example, both
-   ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is
-   ``2``). Delegates to ``x.__round__(n)``.
+   ``round(0.5)`` and ``round(-0.5)`` are ``0``, and ``round(1.5)`` is ``2``).
+   The return value is an integer if called with one argument, otherwise of the
+   same type as *x*.
 
 
 .. function:: set([iterable])
