https://github.com/Sirraide updated https://github.com/llvm/llvm-project/pull/131207
>From bff3db4f6a7fdff572b662048f395c280a11d94b Mon Sep 17 00:00:00 2001 From: Sirraide <aeternalm...@gmail.com> Date: Thu, 13 Mar 2025 21:18:14 +0100 Subject: [PATCH 1/5] [Clang] [Sema] Make -Wreturn-type an error by default --- clang/include/clang/Basic/DiagnosticSemaKinds.td | 2 +- clang/test/Index/warning-flags.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/clang/include/clang/Basic/DiagnosticSemaKinds.td b/clang/include/clang/Basic/DiagnosticSemaKinds.td index 8e6e6e892cdd7..113e684a53c2b 100644 --- a/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -722,7 +722,7 @@ def warn_falloff_nonvoid : Warning< "non-void " "%enum_select<FalloffFunctionKind>{%Function{function}|%Block{block}|%Lambda{lambda}|%Coroutine{coroutine}}0" " does not return a value%select{| in all control paths}1">, - InGroup<ReturnType>; + InGroup<ReturnType>, DefaultError; def err_falloff_nonvoid : Error< "non-void %select{function|block|lambda|coroutine}0 " "does not return a value%select{| in all control paths}1">; diff --git a/clang/test/Index/warning-flags.c b/clang/test/Index/warning-flags.c index 1694c6abab562..3229f000c4ae0 100644 --- a/clang/test/Index/warning-flags.c +++ b/clang/test/Index/warning-flags.c @@ -9,7 +9,7 @@ int *bar(float *f) { return f; } // RUN: c-index-test -test-load-source-reparse 5 all -w %s 2>&1 | FileCheck -check-prefix=NOWARNINGS %s // RUN: c-index-test -test-load-source all -w -O4 %s 2>&1 | FileCheck -check-prefix=NOWARNINGS %s -// CHECK-BOTH-WARNINGS: warning: non-void function does not return a value +// CHECK-BOTH-WARNINGS: error: non-void function does not return a value // CHECK-BOTH-WARNINGS: warning: incompatible pointer types returning 'float *' from a function with result type 'int *' // CHECK-SECOND-WARNING-NOT:non-void function does not return a value >From a8523d15a4c790fe1fb58a6fe41da571cb11ba47 Mon Sep 17 00:00:00 2001 From: Sirraide <aeternalm...@gmail.com> Date: Tue, 18 Mar 2025 17:52:36 +0100 Subject: [PATCH 2/5] Fix clang-tidy warning --- .../test/clang-tidy/checkers/misc/unused-using-decls.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp b/clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp index 62aa17b0b1c22..40451167c5809 100644 --- a/clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp +++ b/clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp @@ -233,7 +233,7 @@ namespace my_literals { using my_literals::operator"" _r; -int foo() { +void foo() { auto x2 = 123_r; } >From f830db193424913aec7e355d39af68de8560adfb Mon Sep 17 00:00:00 2001 From: Sirraide <aeternalm...@gmail.com> Date: Wed, 19 Mar 2025 19:13:01 +0100 Subject: [PATCH 3/5] Add release note --- clang/docs/ReleaseNotes.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index 8989124611e66..1d81b5e191e89 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -38,6 +38,7 @@ Potentially Breaking Changes - Fix missing diagnostics for uses of declarations when performing typename access, such as when performing member access on a '[[deprecated]]' type alias. (#GH58547) +- The `-Wreturn-type` warning now defaults to an error in all language modes. C/C++ Language Potentially Breaking Changes ------------------------------------------- >From fa52fa91f43d306ea77aee012a08686f2d6a7587 Mon Sep 17 00:00:00 2001 From: Sirraide <aeternalm...@gmail.com> Date: Wed, 9 Apr 2025 10:54:22 +0200 Subject: [PATCH 4/5] Fix a new test --- clang/test/CodeGen/RISCV/issue-129995.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clang/test/CodeGen/RISCV/issue-129995.cpp b/clang/test/CodeGen/RISCV/issue-129995.cpp index 4cd60a854558e..1f0a297644f2c 100644 --- a/clang/test/CodeGen/RISCV/issue-129995.cpp +++ b/clang/test/CodeGen/RISCV/issue-129995.cpp @@ -13,8 +13,8 @@ class c { class g { public: template <class h> g(h); - friend g operator^(g, g) { c::f; } - friend g operator^=(g i, g j) { i ^ j; } + friend g operator^(g, g) { c::f; return g{0}; } + friend g operator^=(g i, g j) { i ^ j; return g{0}; } }; template <typename, int> using k = g; template <typename l> using m = k<l, sizeof(l)>; >From fcf702f39f5c5d631629fbad0e87e16652a19bb9 Mon Sep 17 00:00:00 2001 From: Sirraide <aeternalm...@gmail.com> Date: Wed, 9 Apr 2025 10:58:54 +0200 Subject: [PATCH 5/5] Empty commit to restart CI _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits