arichardson created this revision. arichardson added reviewers: MyDeveloperDay, JakeMerdichAMD, sammccall, curdeius, jrtc27. Herald added a project: clang. Herald added a subscriber: cfe-commits. arichardson requested review of this revision.
Currently clang-format starts overriding the default values at index 0 (keeping the existing values) instead of appending or replacing all values. This patch simply checks the current (IMO surprising) behaviour and does not attempt to change it. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D86941 Files: clang/test/Format/dump-config-list-override.cpp Index: clang/test/Format/dump-config-list-override.cpp =================================================================== --- /dev/null +++ clang/test/Format/dump-config-list-override.cpp @@ -0,0 +1,24 @@ +/// Check that the ForEachMacros, etc. config entries replace default values instead of appending +/// FIXME: clang-format currently start overriding at index 0 (keeping the remaining +/// values) instead of either appending or completely replacing the values +/// This behaviour is highly confusing. For now this test documents the current state +// RUN: clang-format -style="{BasedOnStyle: LLVM}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,DEFAULT +// RUN: clang-format -style="{BasedOnStyle: LLVM, ForEachMacros: ['OVERRIDE_FOREACH']}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,OVERRIDE,FIXME-SHOULD-NOT-BE +// RUN: clang-format -style="{BasedOnStyle: LLVM, ForEachMacros: ['M1', 'M2', 'M3', 'M4']}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,MORE-ENTRIES-THAN-DEFAULT + + +// CHECK-LABEL: ForEachMacros: +// DEFAULT-NEXT: {{^ }}- foreach +// DEFAULT-NEXT: {{^ }}- Q_FOREACH +// DEFAULT-NEXT: {{^ }}- BOOST_FOREACH +// OVERRIDE-NEXT: {{^ }}- OVERRIDE_FOREACH +// FIXME-SHOULD-NOT-BE-NEXT: {{^ }}- Q_FOREACH +// FIXME-SHOULD-NOT-BE-NEXT: {{^ }}- BOOST_FOREACH +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M1 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M2 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M3 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M4 +// CHECK-NEXT: {{^[F-Z]}}
Index: clang/test/Format/dump-config-list-override.cpp =================================================================== --- /dev/null +++ clang/test/Format/dump-config-list-override.cpp @@ -0,0 +1,24 @@ +/// Check that the ForEachMacros, etc. config entries replace default values instead of appending +/// FIXME: clang-format currently start overriding at index 0 (keeping the remaining +/// values) instead of either appending or completely replacing the values +/// This behaviour is highly confusing. For now this test documents the current state +// RUN: clang-format -style="{BasedOnStyle: LLVM}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,DEFAULT +// RUN: clang-format -style="{BasedOnStyle: LLVM, ForEachMacros: ['OVERRIDE_FOREACH']}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,OVERRIDE,FIXME-SHOULD-NOT-BE +// RUN: clang-format -style="{BasedOnStyle: LLVM, ForEachMacros: ['M1', 'M2', 'M3', 'M4']}" -dump-config %s | \ +// RUN: FileCheck %s --check-prefixes=CHECK,MORE-ENTRIES-THAN-DEFAULT + + +// CHECK-LABEL: ForEachMacros: +// DEFAULT-NEXT: {{^ }}- foreach +// DEFAULT-NEXT: {{^ }}- Q_FOREACH +// DEFAULT-NEXT: {{^ }}- BOOST_FOREACH +// OVERRIDE-NEXT: {{^ }}- OVERRIDE_FOREACH +// FIXME-SHOULD-NOT-BE-NEXT: {{^ }}- Q_FOREACH +// FIXME-SHOULD-NOT-BE-NEXT: {{^ }}- BOOST_FOREACH +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M1 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M2 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M3 +// MORE-ENTRIES-THAN-DEFAULT-NEXT: {{^ }}- M4 +// CHECK-NEXT: {{^[F-Z]}}
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits