Implement N4502, the C++ Detection Idiom.
commitea105790f97a65717c706b9cb38af8577336b209
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Jul 2015 12:23:54 +0000 (1 12:23 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Jul 2015 12:23:54 +0000 (1 12:23 +0000)
tree56ae96f2abe3a4119a2127c4349e216f5f957cda
parent7394c9c2f5d535b482b94ca135668c1e9b28448f
Implement N4502, the C++ Detection Idiom.

* doc/xml/manual/status_cxx2017.xml: Update status table.
* include/experimental/type_traits (void_t, is_detected,
is_detected_v, detected_t, detected_or, detected_or_t,
is_detected_exact, is_detected_exact_v, is_detected_convertible,
is_detected_convertible_v): Define.
* include/std/type_traits (__detector, __detected_or, __detected_or_t,
__detected_or_t_): Define.
* testsuite/experimental/type_traits/detection.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225242 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/doc/xml/manual/status_cxx2017.xml
libstdc++-v3/include/experimental/type_traits
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/experimental/type_traits/detection.cc [new file with mode: 0644]