12bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//===----------------------------------------------------------------------===//
22bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//
32bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//                     The LLVM Compiler Infrastructure
42bc36fcff3de1ace5c74bb7c1459def41a67e862Howard 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.
72bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//
82bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//===----------------------------------------------------------------------===//
92bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant
102bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant// <random>
112bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant
122bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant// template<class RealType = double>
132bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant// class lognormal_distribution
142bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant// {
152bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant//     class param_type;
162bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant
172bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant#include <random>
182bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant#include <limits>
192bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant#include <cassert>
202bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant
212bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnantint main()
222bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant{
232bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant    {
242bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        typedef std::lognormal_distribution<> D;
252bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        typedef D::param_type param_type;
262bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        param_type p1(0.75, .5);
272bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        param_type p2(0.75, .5);
282bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        assert(p1 == p2);
292bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant    }
302bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant    {
312bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        typedef std::lognormal_distribution<> D;
322bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        typedef D::param_type param_type;
332bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        param_type p1(0.75, .5);
342bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        param_type p2(0.5, .5);
352bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant        assert(p1 != p2);
362bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant    }
372bc36fcff3de1ace5c74bb7c1459def41a67e862Howard Hinnant}
38