diff options
author | Kostya Serebryany <kcc@google.com> | 2017-02-07 22:37:34 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2017-02-07 22:37:34 +0000 |
commit | 6ac64c3a6da5dc0d2380a130919caa9055cb3765 (patch) | |
tree | a8f2e67ad55dd302347079808e2d7692b0dda964 /llvm/lib/Fuzzer/FuzzerRandom.h | |
parent | 39c138cc765f76b9f52d33b23bd02a66d7a4bdc1 (diff) | |
download | bcm5719-llvm-6ac64c3a6da5dc0d2380a130919caa9055cb3765.tar.gz bcm5719-llvm-6ac64c3a6da5dc0d2380a130919caa9055cb3765.zip |
[libFuzzer] replace std::random_shuffle with std::shuffle as std::random_shuffle is being deprecated in C++17. Also simplify fuzzer::Random. NFC
llvm-svn: 294366
Diffstat (limited to 'llvm/lib/Fuzzer/FuzzerRandom.h')
-rw-r--r-- | llvm/lib/Fuzzer/FuzzerRandom.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/lib/Fuzzer/FuzzerRandom.h b/llvm/lib/Fuzzer/FuzzerRandom.h index b1be0bb935f..8a1aa3ef5fd 100644 --- a/llvm/lib/Fuzzer/FuzzerRandom.h +++ b/llvm/lib/Fuzzer/FuzzerRandom.h @@ -15,10 +15,11 @@ #include <random> namespace fuzzer { -class Random { +class Random : public std::mt19937 { public: - Random(unsigned int seed) : R(seed) {} - size_t Rand() { return R(); } + Random(unsigned int seed) : std::mt19937(seed) {} + result_type operator()() { return this->std::mt19937::operator()(); } + size_t Rand() { return this->operator()(); } size_t RandBool() { return Rand() % 2; } size_t operator()(size_t n) { return n ? Rand() % n : 0; } intptr_t operator()(intptr_t From, intptr_t To) { @@ -26,9 +27,6 @@ class Random { intptr_t RangeSize = To - From + 1; return operator()(RangeSize) + From; } - std::mt19937 &Get_mt19937() { return R; } - private: - std::mt19937 R; }; } // namespace fuzzer |