backport bin() documentation
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 03525ca..78d2ad1 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -112,6 +112,15 @@
    .. versionadded:: 2.3
 
 
+.. function:: bin(x)
+
+   Convert an integer number to a binary string. The result is a valid Python
+   expression.  If *x* is not a Python :class:`int` object, it has to define an
+   :meth:`__index__` method that returns an integer.
+
+   .. versionadded:: 2.6
+
+
 .. function:: bool([x])
 
    Convert a value to a Boolean, using the standard truth testing procedure.  If
diff --git a/Doc/reference/lexical_analysis.rst b/Doc/reference/lexical_analysis.rst
index b548722..03e4c05 100644
--- a/Doc/reference/lexical_analysis.rst
+++ b/Doc/reference/lexical_analysis.rst
@@ -629,10 +629,11 @@
 
 .. productionlist::
    longinteger: `integer` ("l" | "L")
-   integer: `decimalinteger` | `octinteger` | `hexinteger`
+   integer: `decimalinteger` | `octinteger` | `hexinteger` | `bininteger`
    decimalinteger: `nonzerodigit` `digit`* | "0"
    octinteger: "0" `octdigit`+
    hexinteger: "0" ("x" | "X") `hexdigit`+
+   bininteger: "0" ("b" | "B") `bindigit`+
    nonzerodigit: "1"..."9"
    octdigit: "0"..."7"
    hexdigit: `digit` | "a"..."f" | "A"..."F"