1f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//===----------------------------------------------------------------------===//
2f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//
3f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//                     The LLVM Compiler Infrastructure
4f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//
5b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// This file is dual licensed under the MIT and the University of Illinois Open
6b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// Source Licenses. See LICENSE.TXT for details.
7f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//
8f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//===----------------------------------------------------------------------===//
9f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant
10f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant// <random>
11f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant
12f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant// template<class IntType = int>
13f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant// class negative_binomial_distribution
14f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant// {
15f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant//     class param_type;
16f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant
17f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant#include <random>
18f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant#include <limits>
19f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant#include <cassert>
20f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant
21f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnantint main()
22f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant{
23f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant    {
24f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        typedef std::negative_binomial_distribution<> D;
25f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        typedef D::param_type param_type;
26f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        param_type p1(3, 0.75);
27f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        param_type p2(3, 0.75);
28f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        assert(p1 == p2);
29f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant    }
30f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant    {
31f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        typedef std::negative_binomial_distribution<> D;
32f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        typedef D::param_type param_type;
33f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        param_type p1(3, 0.75);
34f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        param_type p2(3, 0.5);
35f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant        assert(p1 != p2);
36f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant    }
37f2fe5d5a61d1f5842068793620aaff1e88173f7fHoward Hinnant}
38