[clang-tools-extra] r342388 - [Clang-Tidy: modernize] Fix for modernize-redundant-void-arg: complains about variable cast to void
IdrissRio via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 17 06:18:07 PDT 2018
Yes I have already make the fix commit. It was an error in the tests.
https://github.com/llvm-mirror/clang-tools-extra/commit/77ed1cd838a249d6134de9a6bdbe17ef46ecf946 <https://github.com/llvm-mirror/clang-tools-extra/commit/77ed1cd838a249d6134de9a6bdbe17ef46ecf946>
Now on my Mac it compile and all the tests are ok.
Should I try anything else ?
> Il giorno 17 set 2018, alle ore 15:14, Alexander Kornienko via cfe-commits <cfe-commits at lists.llvm.org <mailto:cfe-commits at lists.llvm.org>> ha scritto:
>
> It looks like this commit breaks buildbots (e.g. http://lab.llvm.org:8011/builders/clang-cmake-armv8-quick/builds/6711 <http://lab.llvm.org:8011/builders/clang-cmake-armv8-quick/builds/6711>). Could you take a look?
>
> On Mon, Sep 17, 2018 at 2:33 PM Idriss Riouak via cfe-commits <cfe-commits at lists.llvm.org <mailto:cfe-commits at lists.llvm.org>> wrote:
> Author: idrissrio
> Date: Mon Sep 17 05:29:29 2018
> New Revision: 342388
>
> URL: http://llvm.org/viewvc/llvm-project?rev=342388&view=rev <http://llvm.org/viewvc/llvm-project?rev=342388&view=rev>
> Log:
> [Clang-Tidy: modernize] Fix for modernize-redundant-void-arg: complains about variable cast to void
>
> Summary:
> Hello, i would like to suggest a fix for one of the checks in clang-tidy.The bug was reported in https://bugs.llvm.org/show_bug.cgi?id=32575 <https://bugs.llvm.org/show_bug.cgi?id=32575> where you can find more information.
>
> For example:
> ```
> template <typename T0>
> struct S {
> template <typename T>
> void g() const {
> int a;
> (void)a;
> }
> };
>
> void f() {
> S<int>().g<int>();
> }
> ```
>
>
> this piece of code should not trigger any warning by the check modernize-redundant-void-arg but when we execute the following command
>
>
> ```
> clang_tidy -checks=-*,modernize-redundant-void-arg test.cpp -- -std=c++11
> ```
>
> we obtain the following warning:
>
> /Users/eco419/Desktop/clang-tidy.project/void-redundand_2/test.cpp:6:6: warning: redundant void argument list in function declaration [modernize-redundant-void-arg]
> (void)a;
> ^~~~
>
> Reviewers: aaron.ballman, hokein, alexfh, JonasToth
>
> Reviewed By: aaron.ballman, JonasToth
>
> Subscribers: JonasToth, lebedev.ri, cfe-commits
>
> Tags: #clang-tools-extra
>
> Differential Revision: https://reviews.llvm.org/D52135 <https://reviews.llvm.org/D52135>
>
> Modified:
> clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp
> clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp
>
> Modified: clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp
> URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp?rev=342388&r1=342387&r2=342388&view=diff <http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp?rev=342388&r1=342387&r2=342388&view=diff>
> ==============================================================================
> --- clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp (original)
> +++ clang-tools-extra/trunk/clang-tidy/modernize/RedundantVoidArgCheck.cpp Mon Sep 17 05:29:29 2018
> @@ -49,7 +49,7 @@ void RedundantVoidArgCheck::registerMatc
> return;
>
> Finder->addMatcher(functionDecl(parameterCountIs(0), unless(isImplicit()),
> - unless(isExternC()))
> + unless(isInstantiated()), unless(isExternC()))
> .bind(FunctionId),
> this);
> Finder->addMatcher(typedefNameDecl().bind(TypedefId), this);
>
> Modified: clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp
> URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp?rev=342388&r1=342387&r2=342388&view=diff <http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp?rev=342388&r1=342387&r2=342388&view=diff>
> ==============================================================================
> --- clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp (original)
> +++ clang-tools-extra/trunk/test/clang-tidy/modernize-redundant-void-arg.cpp Mon Sep 17 05:29:29 2018
> @@ -488,3 +488,64 @@ void lambda_expression_with_macro_test()
> // CHECK-MESSAGES: :[[@LINE-1]]:6: warning: redundant void argument list in lambda expression [modernize-redundant-void-arg]
> // CHECK-FIXES: []() BODY;
> }
> +
> +struct S_1 {
> + void g_1(void) const {
> + // CHECK-MESSAGES: :[[@LINE-1]]:11: warning: redundant void argument list in function definition [modernize-redundant-void-arg]
> + // CHECK-FIXES: void g_1() const {
> + int a;
> + (void)a;
> + }
> +
> + void g_2() const {
> + int a;
> + (void)a;
> + }
> +};
> +
> +template <typename T0>
> +struct S_2 {
> + void g_1(void) const {
> + // CHECK-MESSAGES: :[[@LINE-1]]:11: warning: redundant void argument list in function definition [modernize-redundant-void-arg]
> + // CHECK-FIXES: void g_1() const {
> + int a;
> + (void)a;
> + }
> +
> + void g_2() const {
> + int a;
> + (void)a;
> + }
> +};
> +
> +template <typename T0>
> +struct S_3 {
> + template <typename T1>
> + void g_1(void) const {
> + // CHECK-MESSAGES: :[[@LINE-1]]:11: warning: redundant void argument list in function definition [modernize-redundant-void-arg]
> + // CHECK-FIXES: void g_1() const {
> + int a;
> + (void)a;
> + }
> + template <typename T2>
> + void g_2() const {
> + int a;
> + (void)a;
> + }
> +};
> +
> +template <typename T1>
> +void g_3(void) {
> + // CHECK-MESSAGES: :[[@LINE-1]]:10: warning: redundant void argument list in function definition [modernize-redundant-void-arg]
> + // CHECK-FIXES: void g_3(){
> + int a;
> + (void)a;
> +}
> +
> +//Template instantiation
> +void f_testTemplate() {
> + S_1();
> + S_2<int>();
> + S_3<int>();
> + g_3<int>();
> +}
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org <mailto:cfe-commits at lists.llvm.org>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org <mailto:cfe-commits at lists.llvm.org>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180917/28dd815f/attachment-0001.html>
More information about the cfe-commits
mailing list