diff --git a/clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp b/clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp index 9331898bf2570..68b5743c6540f 100644 --- a/clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp +++ b/clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp @@ -141,9 +141,9 @@ int main(int argc, char **argv) { tooling::ApplyChangesSpec Spec; Spec.Cleanup = true; - Spec.Style = FormatStyle; Spec.Format = DoFormat ? tooling::ApplyChangesSpec::kAll : tooling::ApplyChangesSpec::kNone; + Spec.Style = DoFormat ? FormatStyle : format::getNoStyle(); for (const auto &FileChange : Changes) { FileEntryRef Entry = FileChange.first; diff --git a/clang-tools-extra/docs/ReleaseNotes.rst b/clang-tools-extra/docs/ReleaseNotes.rst index 9e819ea34c397..16309bd89bda4 100644 --- a/clang-tools-extra/docs/ReleaseNotes.rst +++ b/clang-tools-extra/docs/ReleaseNotes.rst @@ -153,9 +153,16 @@ Changes in existing checks Removed checks ^^^^^^^^^^^^^^ +Miscellaneous +^^^^^^^^^^^^^ + - Removed `cert-dcl21-cpp`, which was deprecated since :program:`clang-tidy` 17, since the rule DCL21-CPP has been removed from the CERT guidelines. +- Fixed incorrect formatting in ``clang-apply-repalcements`` when no ``--format`` + option is specified. Now ``clang-apply-replacements`` applies formatting only with + the option. + Improvements to include-fixer ----------------------------- diff --git a/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.cpp b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.cpp new file mode 100644 index 0000000000000..140e266200b72 --- /dev/null +++ b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.cpp @@ -0,0 +1,10 @@ +#include +// CHECK: #include +// CHECK-NEXT: #include +// CHECK-NEXT: #include "bar.h" +#include +#include "foo.h" +#include "bar.h" + +void foo() { +} diff --git a/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.yaml b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.yaml new file mode 100644 index 0000000000000..172b5ee1f1ac5 --- /dev/null +++ b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.yaml @@ -0,0 +1,14 @@ +--- +MainSourceFile: no.cpp +Diagnostics: + - DiagnosticName: test-header-format + DiagnosticMessage: + Message: Fix + FilePath: $(path)/no.cpp + FileOffset: 36 + Replacements: + - FilePath: $(path)/no.cpp + Offset: 36 + Length: 17 + ReplacementText: "" +... diff --git a/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.cpp b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.cpp new file mode 100644 index 0000000000000..20e6b90c39b63 --- /dev/null +++ b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.cpp @@ -0,0 +1,10 @@ +#include +// CHECK: #include "bar.h" +// CHECK-NEXT: #include +// CHECK-NEXT: #include +#include +#include "foo.h" +#include "bar.h" + +void foo() { +} diff --git a/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.yaml b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.yaml new file mode 100644 index 0000000000000..723c4c5d5ceb3 --- /dev/null +++ b/clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.yaml @@ -0,0 +1,14 @@ +--- +MainSourceFile: yes.cpp +Diagnostics: + - DiagnosticName: test-header-format + DiagnosticMessage: + Message: Fix + FilePath: $(path)/yes.cpp + FileOffset: 36 + Replacements: + - FilePath: $(path)/yes.cpp + Offset: 36 + Length: 17 + ReplacementText: "" +... diff --git a/clang-tools-extra/test/clang-apply-replacements/format-header.cpp b/clang-tools-extra/test/clang-apply-replacements/format-header.cpp new file mode 100644 index 0000000000000..6a221c44b06a7 --- /dev/null +++ b/clang-tools-extra/test/clang-apply-replacements/format-header.cpp @@ -0,0 +1,13 @@ +// RUN: mkdir -p %T/Inputs/format_header_yes +// RUN: mkdir -p %T/Inputs/format_header_no +// +// +// RUN: grep -Ev "// *[A-Z-]+:" %S/Inputs/format_header/yes.cpp > %T/Inputs/format_header_yes/yes.cpp +// RUN: grep -Ev "// *[A-Z-]+:" %S/Inputs/format_header/no.cpp > %T/Inputs/format_header_no/no.cpp +// RUN: sed "s#\$(path)#%/T/Inputs/format_header_yes#" %S/Inputs/format_header/yes.yaml > %T/Inputs/format_header_yes/yes.yaml +// RUN: sed "s#\$(path)#%/T/Inputs/format_header_no#" %S/Inputs/format_header/no.yaml > %T/Inputs/format_header_no/no.yaml +// RUN: clang-apply-replacements -format -style="{BasedOnStyle: llvm, SortIncludes: CaseSensitive}" %T/Inputs/format_header_yes +// RUN: clang-apply-replacements %T/Inputs/format_header_no +// RUN: FileCheck --strict-whitespace -input-file=%T/Inputs/format_header_yes/yes.cpp %S/Inputs/format_header/yes.cpp +// RUN: FileCheck --strict-whitespace -input-file=%T/Inputs/format_header_no/no.cpp %S/Inputs/format_header/no.cpp +//