Issue #13557: Clarify effect of giving two different namespaces to exec or
execfile().
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 3fcd694..b6252e6 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -417,7 +417,10 @@
current scope. If only *globals* is provided, it must be a dictionary, which
will be used for both the global and the local variables. If *globals* and
*locals* are given, they are used for the global and local variables,
- respectively. If provided, *locals* can be any mapping object.
+ respectively. If provided, *locals* can be any mapping object. Remember
+ that at module level, globals and locals are the same dictionary. If exec
+ gets two separate objects as *globals* and *locals*, the code will be
+ executed as if it were embedded in a class definition.
If the *globals* dictionary does not contain a value for the key
``__builtins__``, a reference to the dictionary of the built-in module