diff options
author | Brad King <brad.king@kitware.com> | 2017-11-28 15:45:44 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-11-28 15:50:44 (GMT) |
commit | 923b8fadd5fe6af56197cf3916a3292b60c0e8db (patch) | |
tree | 17d0031fb3f2e57184760b7a9a6274c26754c65a /Utilities | |
parent | 8b5ae1c1d310fc6eb13b2cde5712b4e319f01f3e (diff) | |
download | CMake-923b8fadd5fe6af56197cf3916a3292b60c0e8db.zip CMake-923b8fadd5fe6af56197cf3916a3292b60c0e8db.tar.gz CMake-923b8fadd5fe6af56197cf3916a3292b60c0e8db.tar.bz2 |
IWYU: Add mappings for std::enable_if on chrono durations
IWYU incorrectly classifies this internal STL type as not internal, and
suggests including `<type_traits>` for it. Work around the problem by
mapping the offending names to a file that we always include.
See include-what-you-use issue 434.
Diffstat (limited to 'Utilities')
-rw-r--r-- | Utilities/IWYU/mapping.imp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Utilities/IWYU/mapping.imp b/Utilities/IWYU/mapping.imp index 6477d59..221da06 100644 --- a/Utilities/IWYU/mapping.imp +++ b/Utilities/IWYU/mapping.imp @@ -63,6 +63,10 @@ { symbol: [ "std::__decay_and_strip<const std::basic_string<char> &>::__type", private, "\"cmConfigure.h\"", public ] }, { symbol: [ "std::__decay_and_strip<cmFindPackageCommand::PathLabel &>::__type", private, "\"cmConfigure.h\"", public ] }, { symbol: [ "std::__decay_and_strip<__gnu_cxx::__normal_iterator<const cmCTestTestHandler::cmCTestTestProperties *, std::vector<cmCTestTestHandler::cmCTestTestProperties, std::allocator<cmCTestTestHandler::cmCTestTestProperties> > > &>::__type", private, "\"cmConfigure.h\"", public ] }, + { symbol: [ "std::__success_type<std::chrono::duration<double, std::ratio<1, 1> > >::type", private, "\"cmConfigure.h\"", public ] }, + { symbol: [ "std::enable_if<true, std::chrono::duration<long, std::ratio<1, 1> > >::type", private, "\"cmConfigure.h\"", public ] }, + { symbol: [ "std::enable_if<true, std::chrono::duration<long, std::ratio<60, 1> > >::type", private, "\"cmConfigure.h\"", public ] }, + { symbol: [ "std::enable_if<true, std::chrono::duration<long, std::ratio<1, 1000> > >::type", private, "\"cmConfigure.h\"", public ] }, # KWIML { include: [ "<stdint.h>", public, "\"cm_kwiml.h\"", public ] }, |