diff --git a/tests/bch_decoder_test.cc b/tests/bch_decoder_test.cc index 69e9af0..814d480 100644 --- a/tests/bch_decoder_test.cc +++ b/tests/bch_decoder_test.cc @@ -28,8 +28,8 @@ int main() uint8_t code[L]; for (int i = 0; i < L; ++i) code[i] = target[i]; - std::uniform_int_distribution distribution(0, BCH::N-1); - auto noise = std::bind(distribution, generator); + typedef std::uniform_int_distribution distribution; + auto noise = std::bind(distribution(0, BCH::N-1), generator); for (int i = 0; i < 3; ++i) { int n = noise(); if (n < BCH::K) @@ -61,8 +61,8 @@ int main() uint8_t *code = new uint8_t[L]; for (int i = 0; i < L; ++i) code[i] = target[i]; - std::uniform_int_distribution distribution(0, BCH::N-1); - auto noise = std::bind(distribution, generator); + typedef std::uniform_int_distribution distribution; + auto noise = std::bind(distribution(0, BCH::N-1), generator); for (int i = 0; i < 12; ++i) { int n = noise(); if (n < BCH::K) @@ -88,8 +88,8 @@ int main() BCH::value_type code[BCH::N]; for (int i = 0; i < BCH::N; ++i) code[i] = target[i]; - std::uniform_int_distribution distribution(0, BCH::N-1); - auto noise = std::bind(distribution, generator); + typedef std::uniform_int_distribution distribution; + auto noise = std::bind(distribution(0, BCH::N-1), generator); for (int i = 0; i < 3; ++i) code[noise()] ^= 1; decode(reinterpret_cast(code), reinterpret_cast(code) + BCH::K); @@ -111,8 +111,8 @@ int main() BCH::value_type *code = new BCH::value_type[BCH::N]; for (int i = 0; i < BCH::N; ++i) code[i] = target[i]; - std::uniform_int_distribution distribution(0, BCH::N-1); - auto noise = std::bind(distribution, generator); + typedef std::uniform_int_distribution distribution; + auto noise = std::bind(distribution(0, BCH::N-1), generator); for (int i = 0; i < 12; ++i) code[noise()] ^= 1; (*decode)(reinterpret_cast(code), reinterpret_cast(code) + BCH::K); diff --git a/tests/rs_decoder_test.cc b/tests/rs_decoder_test.cc index f492603..0790da9 100644 --- a/tests/rs_decoder_test.cc +++ b/tests/rs_decoder_test.cc @@ -24,8 +24,9 @@ int main() RS::value_type code[RS::N]; for (int i = 0; i < RS::N; ++i) code[i] = target[i]; - auto pos = std::bind(std::uniform_int_distribution(0, RS::N-1), generator); - auto val = std::bind(std::uniform_int_distribution(0, RS::N), generator); + typedef std::uniform_int_distribution distribution; + auto pos = std::bind(distribution(0, RS::N-1), generator); + auto val = std::bind(distribution(0, RS::N), generator); for (int i = 0; i < 2; ++i) code[pos()] = val(); decode(code, code + RS::K); @@ -47,8 +48,9 @@ int main() RS::value_type code[RS::N]; for (int i = 0; i < RS::N; ++i) code[i] = target[i]; - auto pos = std::bind(std::uniform_int_distribution(0, RS::N-1), generator); - auto val = std::bind(std::uniform_int_distribution(0, RS::N), generator); + typedef std::uniform_int_distribution distribution; + auto pos = std::bind(distribution(0, RS::N-1), generator); + auto val = std::bind(distribution(0, RS::N), generator); for (int i = 0; i < 8; ++i) code[pos()] = val(); decode(code, code + RS::K); @@ -70,8 +72,9 @@ int main() RS::value_type *code = new RS::value_type[RS::N]; for (int i = 0; i < RS::N; ++i) code[i] = target[i]; - auto pos = std::bind(std::uniform_int_distribution(0, RS::N-1), generator); - auto val = std::bind(std::uniform_int_distribution(0, RS::N), generator); + typedef std::uniform_int_distribution distribution; + auto pos = std::bind(distribution(0, RS::N-1), generator); + auto val = std::bind(distribution(0, RS::N), generator); for (int i = 0; i < 32; ++i) code[pos()] = val(); (*decode)(code, code + RS::K); diff --git a/tests/rs_regression_test.cc b/tests/rs_regression_test.cc index b4f1cb2..e4d32f1 100644 --- a/tests/rs_regression_test.cc +++ b/tests/rs_regression_test.cc @@ -19,12 +19,13 @@ void rs_test(int trials) GF instance; DEC decode; ENC encode; - auto rnd_cnt = std::bind(std::uniform_int_distribution(0, ENC::NP), generator); - auto rnd_len = std::bind(std::uniform_int_distribution(1, ENC::K), generator); - auto rnd_val = std::bind(std::uniform_int_distribution(0, ENC::N), generator); + typedef std::uniform_int_distribution distribution; + auto rnd_cnt = std::bind(distribution(0, ENC::NP), generator); + auto rnd_len = std::bind(distribution(1, ENC::K), generator); + auto rnd_val = std::bind(distribution(0, ENC::N), generator); while (--trials) { int data_len = rnd_len(); - auto rnd_pos = std::bind(std::uniform_int_distribution(0, data_len + ENC::NP - 1), generator); + auto rnd_pos = std::bind(distribution(0, data_len + ENC::NP - 1), generator); typename ENC::value_type data[data_len], orig_data[data_len]; for (int i = 0; i < data_len; ++i) data[i] = orig_data[i] = rnd_val();