Fix PR37407 - callable traits don't correctly check complete types.
authorEric Fiselier <eric@efcs.ca>
Thu, 10 May 2018 20:59:35 +0000 (20:59 +0000)
committerEric Fiselier <eric@efcs.ca>
Thu, 10 May 2018 20:59:35 +0000 (20:59 +0000)
commit11a18a7902dad9982d80301bf575266a353b1ac5
tree9ae7adeb2ce814386f15db9b7f720802135ac84a
parent1dc90204bf2971c6f2fc4527c0ee0620a79727b8
Fix PR37407 - callable traits don't correctly check complete types.

Checking for complete types is really rather tricky when you consider
the amount of specializations required to check a function type. This
specifically caused PR37407 where we incorrectly diagnosed
noexcept function types as incomplete (but there were plenty of other
cases that would cause this).

This patch removes the complete type checking for now. I'm going
to look into adding a clang builtin to correctly do this for us.

llvm-svn: 332040
libcxx/include/type_traits
libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp
libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp