PR libstdc++/83395 fix invocable traits for INVOKE<cv void>
authorJonathan Wakely <jwakely@redhat.com>
Tue, 12 Dec 2017 17:42:19 +0000 (17:42 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Tue, 12 Dec 2017 17:42:19 +0000 (17:42 +0000)
commit91d01b33e8c331d594b40f464b2af44c8aeac597
tree18e8c9d13c7ff69685e4778e974f340200e7a764
parent71b2d1371a70327f66932315c494eff089b8ff9c
PR libstdc++/83395 fix invocable traits for INVOKE<cv void>

PR libstdc++/83395
* include/std/type_traits (__is_invocable_impl): Remove partial
specialization for INVOKE<void> and restore is_void<R> check in
primary template.
(__is_nt_invocable_impl): Likewise.
* testsuite/20_util/is_invocable/83395.cc: New test.
* testsuite/20_util/is_nothrow_invocable/83395.cc: New test.

From-SVN: r255584
libstdc++-v3/ChangeLog
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/20_util/is_invocable/83395.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/is_nothrow_invocable/83395.cc [new file with mode: 0644]