[clang] [clang-format] Option to ignore macro definitions (PR #70338)

Björn Schäpers via cfe-commits cfe-commits at lists.llvm.org
Sun Nov 19 08:39:36 PST 2023


================
@@ -24153,6 +24153,113 @@ 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 A x:", Style);
+  verifyNoChange("#define A a. b", Style);
+
+  // Surrounded with formatted code.
+  verifyFormat("int a;\n"
+               "#define  A  a\n"
+               "int a;",
+               "int  a ;\n"
----------------
HazardyKnusperkeks wrote:

It's often hard to see that comma. That's what probably happened here.

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


More information about the cfe-commits mailing list