Index: clang/docs/ClangFormatStyleOptions.rst =================================================================== --- clang/docs/ClangFormatStyleOptions.rst +++ clang/docs/ClangFormatStyleOptions.rst @@ -2696,16 +2696,20 @@ **FixNamespaceComments** (``Boolean``) :versionbadge:`clang-format 5` If ``true``, clang-format adds missing namespace end comments for - short namespaces and fixes invalid existing ones. Short ones are - controlled by "ShortNamespaceLines". + namespaces and fixes invalid existing ones. This is omitted for short + namespaces, what a short namespace is, is controlled by + "ShortNamespaceLines". .. code-block:: c++ true: false: namespace a { vs. namespace a { - foo(); foo(); - bar(); bar(); + void foo(); void foo(); + void bar(); void bar(); } // namespace a } + namespace short { namespace short { + void baz(); void baz(); + } } **ForEachMacros** (``List of Strings``) :versionbadge:`clang-format 3.7` A vector of macros that should be interpreted as foreach loops Index: clang/include/clang/Format/Format.h =================================================================== --- clang/include/clang/Format/Format.h +++ clang/include/clang/Format/Format.h @@ -2121,14 +2121,18 @@ bool ExperimentalAutoDetectBinPacking; /// If ``true``, clang-format adds missing namespace end comments for - /// short namespaces and fixes invalid existing ones. Short ones are - /// controlled by "ShortNamespaceLines". + /// namespaces and fixes invalid existing ones. This is omitted for short + /// namespaces, what a short namespace is, is controlled by + /// "ShortNamespaceLines". /// \code /// true: false: /// namespace a { vs. namespace a { - /// foo(); foo(); - /// bar(); bar(); + /// void foo(); void foo(); + /// void bar(); void bar(); /// } // namespace a } + /// namespace short { namespace short { + /// void baz(); void baz(); + /// } } /// \endcode /// \version 5 bool FixNamespaceComments;