diff --git a/Documentation/coding-style.rst b/Documentation/coding-style.rst
index 8af06d6a..967506db 100644
--- a/Documentation/coding-style.rst
+++ b/Documentation/coding-style.rst
@@ -187,6 +187,21 @@ These rules match the `object ownership rules from the Chromium C++ Style Guide`
    long term borrowing isn't marked through language constructs, it shall be
    documented explicitly in details in the API.
 
+Global Variables
+~~~~~~~~~~~~~~~~
+
+The order of initialization and destructions of global variables cannot be
+reasonably controlled. This can cause problems (segfaults) when global
+variables depend on each other, or when non-globals depend on globals.
+For example, if the declaration of a global variable calls a constructor,
+which calls into another global variable that has yet to be initialized, that
+is likely to segfault.
+
+The best solution is to avoid global variables when possible. If required,
+such as for implementing factories with auto-registration, avoid dependencies
+by running the minimum amount of code in the constructor and destructor,
+and move code that contains dependencies to a later point of time.
+
 C Compatibility Headers
 ~~~~~~~~~~~~~~~~~~~~~~~
 
