From 7c928205c1f5a972f1f4dbeae83bd979c9a617d7 Mon Sep 17 00:00:00 2001 From: mydeveloperday Date: Thu, 23 Mar 2023 09:52:59 +0000 Subject: [PATCH] Revert "[clang-format] NFC Format.h and ClangFormatStyleOptions.rst are out of date" This reverts commit 7a5b95732ade6c2de69b26f1038aa0a5afc39393. --- clang/docs/ClangFormatStyleOptions.rst | 89 -------------------------- clang/include/clang/Format/Format.h | 48 +++----------- 2 files changed, 10 insertions(+), 127 deletions(-) diff --git a/clang/docs/ClangFormatStyleOptions.rst b/clang/docs/ClangFormatStyleOptions.rst index 37500d7bff52..fd8f2bbb5432 100644 --- a/clang/docs/ClangFormatStyleOptions.rst +++ b/clang/docs/ClangFormatStyleOptions.rst @@ -3642,95 +3642,6 @@ the configuration (without a prefix: ``Auto``). **MacroBlockEnd** (``String``) :versionbadge:`clang-format 3.7` :ref:`¶ ` A regular expression matching macros that end a block. -.. _Macros: -<<<<<<< -======= - -**Macros** (``List of Strings``) :versionbadge:`clang-format 17.0` :ref:`¶ ` - A list of macros of the form ``=`` . - - Code will be parsed with macros expanded, in order to determine how to - interpret and format the macro arguments. - - For example, the code: - - .. code-block:: c++ - - A(a*b); - - will usually be interpreted as a call to a function A, and the - multiplication expression will be formatted as `a * b`. - - If we specify the macro definition: - - .. code-block:: yaml - - Macros: - - A(x)=x - - the code will now be parsed as a declaration of the variable b of type a*, - and formatted as `a* b` (depending on pointer-binding rules). - - Features and restrictions: - * Both function-like macros and object-like macros are supported. - * Macro arguments must be used exactly once in the expansion. - * No recursive expansion; macros referencing other macros will be - ignored. - * Overloading by arity is supported: for example, given the macro - definitions A=x, A()=y, A(a)=a: - - - .. code-block:: c++ - - A; -> x; - A(); -> y; - A(z); -> z; - A(a, b); // will not be expanded. - -.. _MaxEmptyLinesToKeep: ->>>>>>> - -**Macros** (``List of Strings``) :versionbadge:`clang-format 17.0` :ref:`¶ ` - A list of macros of the form ``=`` . - - Code will be parsed with macros expanded, in order to determine how to - interpret and format the macro arguments. - - For example, the code: - - .. code-block:: c++ - - A(a*b); - - will usually be interpreted as a call to a function A, and the - multiplication expression will be formatted as `a * b`. - - If we specify the macro definition: - - .. code-block:: yaml - - Macros: - - A(x)=x - - the code will now be parsed as a declaration of the variable b of type a*, - and formatted as `a* b` (depending on pointer-binding rules). - - Features and restrictions: - * Both function-like macros and object-like macros are supported. - * Macro arguments must be used exactly once in the expansion. - * No recursive expansion; macros referencing other macros will be - ignored. - * Overloading by arity is supported: for example, given the macro - definitions A=x, A()=y, A(a)=a: - - - .. code-block:: c++ - - A; -> x; - A(); -> y; - A(z); -> z; - A(a, b); // will not be expanded. - .. _MaxEmptyLinesToKeep: **MaxEmptyLinesToKeep** (``Unsigned``) :versionbadge:`clang-format 3.7` :ref:`¶ ` diff --git a/clang/include/clang/Format/Format.h b/clang/include/clang/Format/Format.h index e2709cca3967..66904a6a1123 100644 --- a/clang/include/clang/Format/Format.h +++ b/clang/include/clang/Format/Format.h @@ -2754,56 +2754,28 @@ struct FormatStyle { /// \code /// A(a*b); /// \endcode - /// /// will usually be interpreted as a call to a function A, and the /// multiplication expression will be formatted as `a * b`. /// /// If we specify the macro definition: - /// \code{.yaml} + /// \code /// Macros: /// - A(x)=x /// \endcode - /// /// the code will now be parsed as a declaration of the variable b of type a*, /// and formatted as `a* b` (depending on pointer-binding rules). /// /// Features and restrictions: -<<<<<<< -======= - /// * Both function-like macros and object-like macros are supported. - /// * Macro arguments must be used exactly once in the expansion. - /// * No recursive expansion; macros referencing other macros will be + /// * Both function-like macros and object-like macros are supported. + /// * Macro arguments must be used exactly once in the expansion. + /// * No recursive expansion; macros referencing other macros will be /// ignored. - /// * Overloading by arity is supported: for example, given the macro - /// definitions A=x, A()=y, A(a)=a: - /// - /// \code - /// A; -> x; - /// A(); -> y; - /// A(z); -> z; - /// A(a, b); // will not be expanded. - /// \endcode - /// - /// \version 17.0 - std::vector Macros; - - /// The maximum number of consecutive empty lines to keep. ->>>>>>> - /// * Both function-like macros and object-like macros are supported. - /// * Macro arguments must be used exactly once in the expansion. - /// * No recursive expansion; macros referencing other macros will be - /// ignored. - /// * Overloading by arity is supported: for example, given the macro - /// definitions A=x, A()=y, A(a)=a: - /// - /// \code - /// A; -> x; - /// A(); -> y; - /// A(z); -> z; - /// A(a, b); // will not be expanded. - /// \endcode - /// - /// \version 17.0 + /// * Overloading by arity is supported: for example, given the macro + /// definitions A=x, A()=y, A(a)=a, + /// 'A;' -> 'x;' + /// 'A();' -> 'y;' + /// 'A(z);' -> 'z;' + /// 'A(a, b) will not be expanded. std::vector Macros; /// The maximum number of consecutive empty lines to keep.