vec.h: Fix GCC build with -std=gnu++20 [PR98059]
authorScott Snyder <sss@li-snyder.org>
Wed, 2 Dec 2020 14:42:56 +0000 (15:42 +0100)
committerJakub Jelinek <jakub@redhat.com>
Wed, 2 Dec 2020 14:42:56 +0000 (15:42 +0100)
commitbad800c03d00a57fc21718c160459d9a1e8d747a
tree7ce22344c27058d2cfbce4e37388f6a97bec4668
parent05f7a2afe8fac98fb3e70ccd4128e6a2ffd7c817
vec.h: Fix GCC build with -std=gnu++20 [PR98059]

Apparently vec.h doesn't build with -std=c++20/gnu++20, since the
DR2237 r11-532 change.
template <typename T>
class auto_delete_vec
{
private:
  auto_vec_delete<T> (const auto_delete_vec<T> &) = delete;
};
which vec.h uses is invalid C++20, one needs to use
  auto_vec_delete (const auto_delete_vec &) = delete;
instead which is valid all the way back to C++11 (and without = delete
to C++98).

2020-12-02  Scott Snyder  <sss@li-snyder.org>

PR plugins/98059
* vec.h (auto_delete_vec): Use
DISABLE_COPY_AND_ASSIGN(auto_delete_vec) instead of
DISABLE_COPY_AND_ASSIGN(auto_delete_vec<T>) to make it valid C++20
after DR2237.
gcc/vec.h