]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/26_numerics/random/shuffle_order_engine/requirements/constexpr_data.cc
Update copyright years in libstdc++-v3/
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 26_numerics / random / shuffle_order_engine / requirements / constexpr_data.cc
CommitLineData
d466a7e2 1// { dg-do compile }
94a86be0 2// { dg-options "-std=gnu++0x" }
d466a7e2 3
aa118a03 4// Copyright (C) 2010-2014 Free Software Foundation, Inc.
d466a7e2
BK
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
748086b7 9// Free Software Foundation; either version 3, or (at your option)
d466a7e2
BK
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
748086b7
JJ
18// with this library; see the file COPYING3. If not see
19// <http://www.gnu.org/licenses/>.
d466a7e2 20
94a86be0
BK
21#include <random>
22#include <testsuite_common_types.h>
d466a7e2 23
94a86be0 24namespace __gnu_test
d466a7e2 25{
94a86be0
BK
26 struct constexpr_member_data
27 {
28 template<typename _Ttesttype>
29 void
30 operator()()
31 {
32 struct _Concept
33 {
34 void __constraint()
35 {
a9992f7f
PC
36 constexpr auto v1 __attribute__((unused))
37 = _Ttesttype::table_size;
94a86be0
BK
38 }
39 };
d466a7e2 40
94a86be0
BK
41 _Concept c;
42 c.__constraint();
43 }
44 };
45}
d466a7e2 46
94a86be0
BK
47int main()
48{
49 __gnu_test::constexpr_member_data test;
50 typedef std::shuffle_order_engine
51 <
52 std::linear_congruential_engine
53 <
54 uint_fast32_t,16807UL, 0UL, 2147483647UL
55 >,
56 256
57 > type;
58 test.operator()<type>();
d466a7e2
BK
59 return 0;
60}