note how using iter* are unsafe while mutating and document iter(dict)
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index af84f4f..ae3856c 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -1928,6 +1928,11 @@
.. versionadded:: 2.2
+ .. describe:: iter(d)
+
+ Return an iterator over the keys of the dictionary. This is a shortcut
+ for :meth:`iterkeys`.
+
.. method:: clear()
Remove all items from the dictionary.
@@ -1980,6 +1985,9 @@
Return an iterator over the dictionary's ``(key, value)`` pairs. See the
note for :meth:`dict.items`.
+ Using :meth:`iteritems` while adding or deleting entries in the dictionary
+ will raise a :exc:`RuntimeError`.
+
.. versionadded:: 2.2
.. method:: iterkeys()
@@ -1987,6 +1995,9 @@
Return an iterator over the dictionary's keys. See the note for
:meth:`dict.items`.
+ Using :meth:`iterkeys` while adding or deleting entries in the dictionary
+ will raise a :exc:`RuntimeError`.
+
.. versionadded:: 2.2
.. method:: itervalues()
@@ -1994,6 +2005,9 @@
Return an iterator over the dictionary's values. See the note for
:meth:`dict.items`.
+ Using :meth:`itervalues` while adding or deleting entries in the
+ dictionary will raise a :exc:`RuntimeError`.
+
.. versionadded:: 2.2
.. method:: keys()