197dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//===----------------------------------------------------------------------===//
297dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//
397dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//                     The LLVM Compiler Infrastructure
497dc2f35c3d0d797ece43f5598023c6952144f37Howard 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.
797dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//
897dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//===----------------------------------------------------------------------===//
997dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant
1097dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant// <random>
1197dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant
1297dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant// template<class RealType = double>
1397dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant// class chi_squared_distribution
1497dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant// {
1597dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant//     class param_type;
1697dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant
1797dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant#include <random>
1897dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant#include <limits>
1997dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant#include <cassert>
2097dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant
2197dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnantint main()
2297dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant{
2397dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant    {
2497dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        typedef std::chi_squared_distribution<> D;
2597dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        typedef D::param_type param_type;
2697dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        param_type p1(0.75);
2797dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        param_type p2(0.75);
2897dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        assert(p1 == p2);
2997dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant    }
3097dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant    {
3197dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        typedef std::chi_squared_distribution<> D;
3297dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        typedef D::param_type param_type;
3397dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        param_type p1(0.75);
3497dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        param_type p2(0.5);
3597dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant        assert(p1 != p2);
3697dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant    }
3797dc2f35c3d0d797ece43f5598023c6952144f37Howard Hinnant}
38