mirror of
https://github.com/Kitware/CMake.git
synced 2026-03-14 05:20:50 -05:00
IWYU: Add more mappings for std::__decay_and_strip
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.
This commit is contained in:
@@ -52,11 +52,13 @@
|
|||||||
# __decay_and_strip is used internally in the C++11 standard library.
|
# __decay_and_strip is used internally in the C++11 standard library.
|
||||||
# IWYU does not classify it as internal and suggests to add <type_traits>.
|
# IWYU does not classify it as internal and suggests to add <type_traits>.
|
||||||
# To ignore it, we simply map it to a file that is included anyway.
|
# To ignore it, we simply map it to a file that is included anyway.
|
||||||
|
# Use '-Xiwyu -v7' to see the fully qualified names that need this.
|
||||||
# TODO: Can this be simplified with an @-expression?
|
# TODO: Can this be simplified with an @-expression?
|
||||||
#{ symbol: [ "@std::__decay_and_strip<.*>::__type", private, "\"cmConfigure.h\"", public ] },
|
#{ symbol: [ "@std::__decay_and_strip<.*>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
{ symbol: [ "std::__decay_and_strip<cmCommand *&>::__type", private, "\"cmConfigure.h\"", public ] },
|
{ symbol: [ "std::__decay_and_strip<cmCommand *&>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
{ symbol: [ "std::__decay_and_strip<cmGeneratorTarget *&>::__type", private, "\"cmConfigure.h\"", public ] },
|
{ symbol: [ "std::__decay_and_strip<cmGeneratorTarget *&>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
{ symbol: [ "std::__decay_and_strip<cmFindCommon::PathLabel &>::__type", private, "\"cmConfigure.h\"", public ] },
|
{ symbol: [ "std::__decay_and_strip<cmFindCommon::PathLabel &>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
|
{ symbol: [ "std::__decay_and_strip<cmSearchPath>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
{ symbol: [ "std::__decay_and_strip<std::basic_string<char> &>::__type", private, "\"cmConfigure.h\"", public ] },
|
{ symbol: [ "std::__decay_and_strip<std::basic_string<char> &>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
{ symbol: [ "std::__decay_and_strip<const std::basic_string<char> &>::__type", private, "\"cmConfigure.h\"", public ] },
|
{ 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<cmFindPackageCommand::PathLabel &>::__type", private, "\"cmConfigure.h\"", public ] },
|
||||||
|
|||||||
Reference in New Issue
Block a user