diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index ebc177ef1b1e73..65a9d65715dddc 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -449,6 +449,7 @@ Improvements to Clang's diagnostics concepts-ts compatibility extension. - Clang now diagnoses overflow undefined behavior in a constant expression while evaluating a compound assignment with remainder as operand. +- Add ``-Wreturn-local-addr``, a GCC alias for ``-Wreturn-stack-address``. Non-comprehensive list of changes in this release ------------------------------------------------- diff --git a/clang/include/clang/Basic/DiagnosticGroups.td b/clang/include/clang/Basic/DiagnosticGroups.td index 6f282071b525ab..f71bb401e9a10a 100644 --- a/clang/include/clang/Basic/DiagnosticGroups.td +++ b/clang/include/clang/Basic/DiagnosticGroups.td @@ -413,6 +413,8 @@ def DanglingField : DiagGroup<"dangling-field">; def DanglingInitializerList : DiagGroup<"dangling-initializer-list">; def DanglingGsl : DiagGroup<"dangling-gsl">; def ReturnStackAddress : DiagGroup<"return-stack-address">; +// Name of this warning in GCC +def : DiagGroup<"return-local-addr", [ReturnStackAddress]>; def Dangling : DiagGroup<"dangling", [DanglingField, DanglingInitializerList, DanglingGsl, diff --git a/clang/test/SemaCXX/return-stack-addr-2.cpp b/clang/test/SemaCXX/return-stack-addr-2.cpp index e848189bde787c..fb810902d5e3bd 100644 --- a/clang/test/SemaCXX/return-stack-addr-2.cpp +++ b/clang/test/SemaCXX/return-stack-addr-2.cpp @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify -std=c++11 %s +// RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify -std=c++11 -Wno-return-stack-address -Wreturn-local-addr %s namespace PR26599 { template