blob: bd5ca7e08b2abb8047ff4161f7be3d62934fe6e8 [file] [log] [blame]
Howard Hinnantc52f43e2010-08-22 00:59:46 +00001//===----------------------------------------------------------------------===//
2//
3// The LLVM Compiler Infrastructure
4//
Howard Hinnantb64f8b02010-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 Hinnantc52f43e2010-08-22 00:59:46 +00007//
8//===----------------------------------------------------------------------===//
9
10// test default ctor
11
12#include <bitset>
13#include <cassert>
14
Howard Hinnant97ecd642011-05-17 19:12:55 +000015#pragma clang diagnostic ignored "-Wtautological-compare"
16
Howard Hinnantc52f43e2010-08-22 00:59:46 +000017template <std::size_t N>
18void test_default_ctor()
19{
20 {
Howard Hinnant90d87232012-07-07 17:04:52 +000021 _LIBCPP_CONSTEXPR std::bitset<N> v1;
Howard Hinnantc52f43e2010-08-22 00:59:46 +000022 assert(v1.size() == N);
23 for (std::size_t i = 0; i < N; ++i)
24 assert(v1[i] == false);
25 }
26}
27
28int main()
29{
30 test_default_ctor<0>();
31 test_default_ctor<1>();
32 test_default_ctor<31>();
33 test_default_ctor<32>();
34 test_default_ctor<33>();
35 test_default_ctor<63>();
36 test_default_ctor<64>();
37 test_default_ctor<65>();
38 test_default_ctor<1000>();
39}