]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/23_containers/unordered_multiset/55043.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 23_containers / unordered_multiset / 55043.cc
CommitLineData
8868286e 1// { dg-options "-std=gnu++11" }
17ae7f11 2// { dg-do compile }
3
f1717362 4// Copyright (C) 2013-2016 Free Software Foundation, Inc.
17ae7f11 5//
6// This file is part of the GNU ISO C++ Library. This library is free
7// software; you can redistribute it and/or modify it under the
8// terms of the GNU General Public License as published by the
9// Free Software Foundation; either version 3, or (at your option)
10// any later version.
11
12// This library is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU General Public License for more details.
16
17// You should have received a copy of the GNU General Public License along
18// with this library; see the file COPYING3. If not see
19// <http://www.gnu.org/licenses/>.
20
21// libstdc++/55043
22
23#include <unordered_set>
24#include <vector>
25
26struct MoveOnly
27{
28 MoveOnly() = default;
29 MoveOnly(MoveOnly&&) = default;
30};
31
32struct equal {
c50ff294 33 bool operator()(const MoveOnly&, const MoveOnly&) const { return true; }
17ae7f11 34};
35struct hash {
99253c2e 36 std::size_t operator()(const MoveOnly&) const { return 0; }
17ae7f11 37};
38
39template<typename Alloc>
40 using test_type = std::unordered_multiset<MoveOnly, hash, equal, Alloc>;
41
42void test01()
43{
44 typedef test_type<std::allocator<MoveOnly>> uim;
45 std::vector<uim> v;
46 v.emplace_back(uim());
47}