https://github.com/ZhongUncle created https://github.com/llvm/llvm-project/pull/132510
Fixes https://github.com/llvm/llvm-project/issues/59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. I am not familiar with PR, so accidentally closed the previous PR. This is a new one. >From a6a1916aba2d6e42ab7d5f110752a36ecf3268e8 Mon Sep 17 00:00:00 2001 From: Zhong Uncle <2020738...@qq.com> Date: Sat, 22 Mar 2025 11:29:20 +0800 Subject: [PATCH 1/3] Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. --- .../test/clang-doc/comments-in-macros.cpp | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 clang-tools-extra/test/clang-doc/comments-in-macros.cpp diff --git a/clang-tools-extra/test/clang-doc/comments-in-macros.cpp b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp new file mode 100644 index 0000000000000..5dbb20eca6ae1 --- /dev/null +++ b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp @@ -0,0 +1,35 @@ +// Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. +// RUN: rm -rf %t && mkdir -p %t +// RUN: clang-doc --format=md --doxygen --output=%t --executor=standalone %s +// RUN: clang-doc --format=html --doxygen --output=%t --executor=standalone %s +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass-LINE +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass-LINE +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass + +#define DECLARE_METHODS \ + /** \ + * @brief Declare a method to calculate the sum of two numbers\ + */ \ + int Add(int a, int b) \ + { \ + return a + b; \ + } + +// MD-MyClass: ### Add +// MD-MyClass: *public int Add(int a, int b)* +// MD-MyClass: **brief** Declare a method to calculate the sum of two numbers + +// HTML-MyClass: <p>public int Add(int a, int b)</p> +// HTML-MyClass: <div>brief</div> +// HTML-MyClass: <p> Declare a method to calculate the sum of two numbers</p> + + +class MyClass { +public: +// MD-MyClass-LINE: *Defined at {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp#[[@LINE+2]]* +// HTML-MyClass-LINE: <p>Defined at line [[@LINE+1]] of file {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp</p> + DECLARE_METHODS +}; + + >From b15a9d0d97bacb6df133c3c4c5c1c090069672d2 Mon Sep 17 00:00:00 2001 From: Zhong Uncle <2020738...@qq.com> Date: Sat, 22 Mar 2025 11:44:29 +0800 Subject: [PATCH 2/3] Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. --- clang-tools-extra/test/clang-doc/comments-in-macros.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clang-tools-extra/test/clang-doc/comments-in-macros.cpp b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp index 5dbb20eca6ae1..24ad21eff164d 100644 --- a/clang-tools-extra/test/clang-doc/comments-in-macros.cpp +++ b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp @@ -1,9 +1,9 @@ // Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. // RUN: rm -rf %t && mkdir -p %t // RUN: clang-doc --format=md --doxygen --output=%t --executor=standalone %s -// RUN: clang-doc --format=html --doxygen --output=%t --executor=standalone %s // RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass-LINE // RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass +// RUN: clang-doc --format=html --doxygen --output=%t --executor=standalone %s // RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass-LINE // RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass >From 2b6556e554f0245734c2cade64d23a849efe6176 Mon Sep 17 00:00:00 2001 From: Zhong Uncle <2020738...@qq.com> Date: Sat, 22 Mar 2025 11:50:47 +0800 Subject: [PATCH 3/3] Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. --- .../test/clang-doc/comments-in-macros.cpp | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/clang-tools-extra/test/clang-doc/comments-in-macros.cpp b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp index 24ad21eff164d..3273ddcd9c92c 100644 --- a/clang-tools-extra/test/clang-doc/comments-in-macros.cpp +++ b/clang-tools-extra/test/clang-doc/comments-in-macros.cpp @@ -1,11 +1,11 @@ // Fixes #59819. The underlying problem was fixed in https://reviews.llvm.org/D142560, but this patch adds a proper regression test. // RUN: rm -rf %t && mkdir -p %t // RUN: clang-doc --format=md --doxygen --output=%t --executor=standalone %s -// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass-LINE -// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MyClass +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MYCLASS-LINE +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.md --check-prefix=MD-MYCLASS // RUN: clang-doc --format=html --doxygen --output=%t --executor=standalone %s -// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass-LINE -// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MyClass +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MYCLASS-LINE +// RUN: FileCheck %s < %t/GlobalNamespace/MyClass.html --check-prefix=HTML-MYCLASS #define DECLARE_METHODS \ /** \ @@ -16,20 +16,19 @@ return a + b; \ } -// MD-MyClass: ### Add -// MD-MyClass: *public int Add(int a, int b)* -// MD-MyClass: **brief** Declare a method to calculate the sum of two numbers +// MD-MYCLASS: ### Add +// MD-MYCLASS: *public int Add(int a, int b)* +// MD-MYCLASS: **brief** Declare a method to calculate the sum of two numbers -// HTML-MyClass: <p>public int Add(int a, int b)</p> -// HTML-MyClass: <div>brief</div> -// HTML-MyClass: <p> Declare a method to calculate the sum of two numbers</p> +// HTML-MYCLASS: <p>public int Add(int a, int b)</p> +// HTML-MYCLASS: <div>brief</div> +// HTML-MYCLASS: <p> Declare a method to calculate the sum of two numbers</p> class MyClass { public: -// MD-MyClass-LINE: *Defined at {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp#[[@LINE+2]]* -// HTML-MyClass-LINE: <p>Defined at line [[@LINE+1]] of file {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp</p> +// MD-MYCLASS-LINE: *Defined at {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp#[[@LINE+2]]* +// HTML-MYCLASS-LINE: <p>Defined at line [[@LINE+1]] of file {{.*}}clang-tools-extra{{[\/]}}test{{[\/]}}clang-doc{{[\/]}}macro.cpp</p> DECLARE_METHODS }; - _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits