[clang] [clang-format] Option to ignore PP directives (PR #70338)

Björn Schäpers via cfe-commits cfe-commits at lists.llvm.org
Sun Nov 12 11:44:30 PST 2023


================
@@ -24153,6 +24153,23 @@ TEST_F(FormatTest, WhitespaceSensitiveMacros) {
   verifyNoChange("FOO(String-ized&Messy+But: :Still=Intentional);", Style);
 }
 
+TEST_F(FormatTest, IgnorePPDefinitions) {
+  FormatStyle Style = getLLVMStyle();
+  Style.IgnorePPDefinitions = true;
+
+  verifyNoChange("#define  A", Style);
+  verifyNoChange("#define A   b", Style);
+  verifyNoChange("#define A  (  args   )", Style);
+  verifyNoChange("#define A  (  args   )  =  func  (  args  )", Style);
+  verifyNoChange("#define TEXT \\\nLine  number  one .  \\\nNumber  two .",
+                 Style);
+  verifyNoChange("#define A x:", Style);
+  verifyNoChange("#define A a. b", Style);
+
+  // TODO
----------------
HazardyKnusperkeks wrote:

Actually tests with a (line and block) comment after the `#define` would be interesting too, should they be wrapped? Or the space after `//` added?

https://github.com/llvm/llvm-project/pull/70338


More information about the cfe-commits mailing list