blob: e281ba11c92ca3a08deb92248aae9b6f28043bce [file] [log] [blame]
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00001//===----------------------------------------------------------------------===//
2//
Howard Hinnantf5256e12010-05-11 21:36:01 +00003// The LLVM Compiler Infrastructure
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00004//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <algorithm>
11
Howard Hinnanteb564e72010-08-22 00:08:10 +000012// template<class T>
Howard Hinnantbc8d3f92010-05-11 19:42:16 +000013// T
14// min(initializer_list<T> t);
15
16#include <algorithm>
17#include <cassert>
18
Howard Hinnantbc8d3f92010-05-11 19:42:16 +000019int main()
20{
Howard Hinnant73d21a42010-09-04 23:28:19 +000021#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
Howard Hinnant98e5d972010-08-21 20:10:01 +000022 int i = std::min({2, 3, 1});
23 assert(i == 1);
24 i = std::min({2, 1, 3});
25 assert(i == 1);
26 i = std::min({3, 1, 2});
27 assert(i == 1);
28 i = std::min({3, 2, 1});
29 assert(i == 1);
30 i = std::min({1, 2, 3});
31 assert(i == 1);
32 i = std::min({1, 3, 2});
33 assert(i == 1);
Howard Hinnant73d21a42010-09-04 23:28:19 +000034#endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES
Howard Hinnantbc8d3f92010-05-11 19:42:16 +000035}