Issue #7119: document that a program-generated Message object
tree may be mutated when serialized.
diff --git a/Doc/library/email.generator.rst b/Doc/library/email.generator.rst
index 8ba426a..f02e7d8 100644
--- a/Doc/library/email.generator.rst
+++ b/Doc/library/email.generator.rst
@@ -17,7 +17,10 @@
 standards-compliant way, should handle MIME and non-MIME email messages just
 fine, and is designed so that the transformation from flat text, to a message
 structure via the :class:`~email.parser.Parser` class, and back to flat text,
-is idempotent (the input is identical to the output).
+is idempotent (the input is identical to the output).  On the other hand, using
+the Generator on a :class:`~email.message.Message` constructed by program may
+result in changes to the :class:`~email.message.Message` object as defaults are
+filled in.
 
 Here are the public methods of the :class:`Generator` class, imported from the
 :mod:`email.generator` module:
diff --git a/Doc/library/email.message.rst b/Doc/library/email.message.rst
index 0e79b6c..85a5d83 100644
--- a/Doc/library/email.message.rst
+++ b/Doc/library/email.message.rst
@@ -40,7 +40,10 @@
 
       Return the entire message flattened as a string.  When optional *unixfrom*
       is ``True``, the envelope header is included in the returned string.
-      *unixfrom* defaults to ``False``.
+      *unixfrom* defaults to ``False``.  Flattening the message may trigger
+      changes to the :class:`Message` if defaults need to be filled in to
+      complete the transformation to a string (for example, MIME boundaries may
+      be generated or modified).
 
       Note that this method is provided as a convenience and may not always
       format the message the way you want.  For example, by default it mangles
diff --git a/Doc/library/email.mime.rst b/Doc/library/email.mime.rst
index 94df8f0..10f3e37 100644
--- a/Doc/library/email.mime.rst
+++ b/Doc/library/email.mime.rst
@@ -71,7 +71,8 @@
    also be added.
 
    Optional *boundary* is the multipart boundary string.  When ``None`` (the
-   default), the boundary is calculated when needed.
+   default), the boundary is calculated when needed (for example, when the
+   message is serialized).
 
    *_subparts* is a sequence of initial subparts for the payload.  It must be
    possible to convert this sequence to a list.  You can always attach new subparts