[cmake] Enable -Werror=return-type

Turn `-Wreturn-type` into an error.

This is currently used by libcxx, libcxxabi, and libunwind, and would be a good default
for all of llvm. I'm not aware of any cases where this shouldn't be an error. This
ensures different build configs, merges, and downstream branches catch issues sooner.

Differential Revision: https://reviews.llvm.org/D98224
This commit is contained in:
Dave Lee 2021-03-08 13:11:08 -08:00
parent c92d2ea59e
commit ce94a16165
1 changed files with 4 additions and 0 deletions

View File

@ -745,6 +745,10 @@ if (LLVM_ENABLE_WARNINGS AND (LLVM_COMPILER_IS_GCC_COMPATIBLE OR CLANG_CL))
# Enable -Wstring-conversion to catch misuse of string literals.
add_flag_if_supported("-Wstring-conversion" STRING_CONVERSION_FLAG)
# Enable -Werror=return-type if available, to catch functions that contain
# control paths that do not return a value.
add_flag_if_supported("-Werror=return-type" WERROR_RETURN_TYPE)
endif (LLVM_ENABLE_WARNINGS AND (LLVM_COMPILER_IS_GCC_COMPATIBLE OR CLANG_CL))
if (LLVM_COMPILER_IS_GCC_COMPATIBLE AND NOT LLVM_ENABLE_WARNINGS)