[all-commits] [llvm/llvm-project] c63f25: Enable -Wctad-maybe-unsupported in LLVM build
David Blaikie via All-commits
all-commits at lists.llvm.org
Mon Aug 15 16:37:26 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c63f2581f4f8ff9766b55410674f97245c51b7b4
https://github.com/llvm/llvm-project/commit/c63f2581f4f8ff9766b55410674f97245c51b7b4
Author: David Blaikie <dblaikie at gmail.com>
Date: 2022-08-15 (Mon, 15 Aug 2022)
Changed paths:
M libcxx/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/include/llvm/CodeGen/RDFGraph.h
Log Message:
-----------
Enable -Wctad-maybe-unsupported in LLVM build
Warns on potentially unintended use of C++17 Class Template Argument
Deduction. Use of this feature with types that aren't intended to
support it may may future refactorings of those types more difficult -
so this warning fires whenever the feature is used with a type that may
not have intended to be used with CTAD (the warning uses the existence
of at least one explicit deduction guide to indicate that a type
intentionally supports CTAD - absent that, it's assumed to not be
intended to support CTAD & produces a warning).
This is disabled in libcxx because lots of the standard library is
assumed to provide ctad-usable APIs and the false positive suppression
in the diagnostic is based on system header classification which doesn't
apply in the libcxx build itself.
Differential Revision: https://reviews.llvm.org/D131727
More information about the All-commits
mailing list