blob: 7a5bf4b14a71ab074c8229656271ca44c1e2c735 [file] [log] [blame]
Howard Hinnant3e519522010-05-11 19:42:16 +00001//===----------------------------------------------------------------------===//
2//
Howard Hinnant5b08a8a2010-05-11 21:36:01 +00003// The LLVM Compiler Infrastructure
Howard Hinnant3e519522010-05-11 19:42:16 +00004//
Howard Hinnant412dbeb2010-11-16 22:09:02 +00005// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
Howard Hinnant3e519522010-05-11 19:42:16 +00007//
8//===----------------------------------------------------------------------===//
9
10// <set>
11
12// class set
13
14// void clear();
15
16#include <set>
17#include <cassert>
18
Marshall Clowe34f6f62013-11-26 20:58:02 +000019#include "min_allocator.h"
Howard Hinnant07d3ecc2013-06-19 21:29:40 +000020
Howard Hinnant3e519522010-05-11 19:42:16 +000021int main()
22{
23 {
24 typedef std::set<int> M;
25 typedef int V;
26 V ar[] =
27 {
28 1,
29 2,
30 3,
31 4,
32 5,
33 6,
34 7,
35 8
36 };
37 M m(ar, ar + sizeof(ar)/sizeof(ar[0]));
38 assert(m.size() == 8);
39 m.clear();
40 assert(m.size() == 0);
41 }
Eric Fiselierf2f2a632016-06-14 21:31:42 +000042#if TEST_STD_VER >= 11
Howard Hinnant07d3ecc2013-06-19 21:29:40 +000043 {
44 typedef std::set<int, std::less<int>, min_allocator<int>> M;
45 typedef int V;
46 V ar[] =
47 {
48 1,
49 2,
50 3,
51 4,
52 5,
53 6,
54 7,
55 8
56 };
57 M m(ar, ar + sizeof(ar)/sizeof(ar[0]));
58 assert(m.size() == 8);
59 m.clear();
60 assert(m.size() == 0);
61 }
62#endif
Howard Hinnant3e519522010-05-11 19:42:16 +000063}