PR libstdc++/79195 fix make_array type deduction
authorJonathan Wakely <jwakely@redhat.com>
Mon, 23 Jan 2017 15:56:05 +0000 (15:56 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Mon, 23 Jan 2017 15:56:05 +0000 (15:56 +0000)
commit61ad58f3aa6aac0e9b91e175dd821388c5fdf320
treee4e77c48206e3725745d8c08fe0c0346a1be8422
parentf368600fcd86f71c7bfc8a28f42434c539306da2
PR libstdc++/79195 fix make_array type deduction

PR libstdc++/79195
* include/experimental/array (__make_array_elem): New class template
and partial specialization.
(__is_reference_wrapper): Move into __make_array_elem specialization.
(make_array): Use __make_array_elem to determine element type and move
static assertion into specialization. Qualify std::forward call.
(to_array): Add exception specifiation.
* testsuite/experimental/array/make_array.cc: Test argument types
without a common type.
* testsuite/experimental/array/neg.cc: Adjust expected error message.

From-SVN: r244813
libstdc++-v3/ChangeLog
libstdc++-v3/include/experimental/array
libstdc++-v3/testsuite/experimental/array/make_array.cc
libstdc++-v3/testsuite/experimental/array/neg.cc