summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-04-05 20:09:12 (GMT)
committerBrad King <brad.king@kitware.com>2023-04-05 20:12:15 (GMT)
commit850b4d990c1bf15b70cc5dab9794066ab0f1d948 (patch)
tree18ccd2088a5ee628a71a788fb56b3d3ff920f9c6
parent02f23be9a7d6fc400c3acd67fbd7888ff12cdc3b (diff)
downloadCMake-850b4d990c1bf15b70cc5dab9794066ab0f1d948.zip
CMake-850b4d990c1bf15b70cc5dab9794066ab0f1d948.tar.gz
CMake-850b4d990c1bf15b70cc5dab9794066ab0f1d948.tar.bz2
IWYU: Add mapping for 'std::remove_reference<Defer &>::type'
IWYU sometimes thinks that `cmCMakeLanguageCommand.cxx` mentions this type and suggests including `<type_traits>` for it. The type is only used internally by standard library functions. Work around the problem by mapping the offending name to a file that we always include.
-rw-r--r--Utilities/IWYU/mapping.imp1
1 files changed, 1 insertions, 0 deletions
diff --git a/Utilities/IWYU/mapping.imp b/Utilities/IWYU/mapping.imp
index 1afad43..6443632 100644
--- a/Utilities/IWYU/mapping.imp
+++ b/Utilities/IWYU/mapping.imp
@@ -99,6 +99,7 @@
{ 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 ] },
{ symbol: [ "__gnu_cxx::__enable_if<true, bool>::__type", private, "\"cmConfigure.h\"", public ] },
+ { symbol: [ "std::remove_reference<Defer &>::type", private, "\"cmConfigure.h\"", public ] },
# Wrappers for 3rd-party libraries
{ include: [ "@<.*curl/curlver.h>", private, "<cm3p/curl/curl.h>", public ] },