Mock Version: 4.1 Mock Version: 4.1 Mock Version: 4.1 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/practrand.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-80118-53543/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/practrand.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/practrand-0.951-1.oc9.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps --nocheck /builddir/build/SPECS/practrand.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-80118-53543/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps --nocheck /builddir/build/SPECS/practrand.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.yb8Y9B + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf PractRand-0.951 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/PractRand-0.951.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd PractRand-0.951 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + dos2unix doc/PractRand.txt doc/RNG_engines.txt doc/RNG_entropy_pools.txt doc/RNG_interface_variations.txt doc/RNG_multithreading.txt doc/RNG_parallel.txt doc/RNG_speed.txt doc/RNG_usage.txt doc/Tests_batteries.txt doc/Tests_engines.txt doc/Tests_overview.txt doc/Tests_performance.txt doc/Tests_results.txt doc/Tests_usage.txt doc/index.html doc/installation.txt doc/license.txt doc/portability.txt doc/practrand-RNG_test.examples doc/to_do.txt doc/tools.txt doc/versions.txt dos2unix: converting file doc/PractRand.txt to Unix format... dos2unix: converting file doc/RNG_engines.txt to Unix format... dos2unix: converting file doc/RNG_entropy_pools.txt to Unix format... dos2unix: converting file doc/RNG_interface_variations.txt to Unix format... dos2unix: converting file doc/RNG_multithreading.txt to Unix format... dos2unix: converting file doc/RNG_parallel.txt to Unix format... dos2unix: converting file doc/RNG_speed.txt to Unix format... dos2unix: converting file doc/RNG_usage.txt to Unix format... dos2unix: converting file doc/Tests_batteries.txt to Unix format... dos2unix: converting file doc/Tests_engines.txt to Unix format... dos2unix: converting file doc/Tests_overview.txt to Unix format... dos2unix: converting file doc/Tests_performance.txt to Unix format... dos2unix: converting file doc/Tests_results.txt to Unix format... dos2unix: converting file doc/Tests_usage.txt to Unix format... dos2unix: converting file doc/index.html to Unix format... dos2unix: converting file doc/installation.txt to Unix format... dos2unix: converting file doc/license.txt to Unix format... dos2unix: converting file doc/portability.txt to Unix format... dos2unix: converting file doc/practrand-RNG_test.examples to Unix format... dos2unix: converting file doc/to_do.txt to Unix format... dos2unix: converting file doc/tools.txt to Unix format... dos2unix: converting file doc/versions.txt to Unix format... + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.8mDMDW + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd PractRand-0.951 + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c src/math.cpp src/non_uniform.cpp src/platform_specifics.cpp src/rand.cpp src/sha2.cpp src/test_batteries.cpp src/tests.cpp src/RNGs/arbee.cpp src/RNGs/chacha.cpp src/RNGs/efiix.cpp src/RNGs/hc256.cpp src/RNGs/isaac.cpp src/RNGs/jsf.cpp src/RNGs/mt19937.cpp src/RNGs/rarns.cpp src/RNGs/salsa.cpp src/RNGs/sfc.cpp src/RNGs/sha2_based_pool.cpp src/RNGs/trivium.cpp src/RNGs/xsm.cpp src/RNGs/other/fibonacci.cpp src/RNGs/other/indirection.cpp src/RNGs/other/mult.cpp src/RNGs/other/simple.cpp src/RNGs/other/transform.cpp -I include -std=c++11 -O3 -g src/math.cpp: In function 'double PractRand::Tests::math_normaldist_to_suspicion(double)': src/math.cpp:790:32: warning: unused variable 'ec' [-Wunused-variable] 790 | double ec = 1 - math_erf(norm); | ^~ src/math.cpp: In function 'double PractRand::Tests::test_uniformity(const SampleSet&)': src/math.cpp:1024:32: warning: unused variable 'size_inv' [-Wunused-variable] 1024 | double size_inv = 1.0 / size_a; | ^~~~~~~~ src/math.cpp: In function 'double PractRand::Tests::test_table_uniformity(long unsigned int, const double*, const PractRand::Uint64*)': src/math.cpp:1086:37: warning: unused variable 'sum_exp' [-Wunused-variable] 1086 | long double sum_exp = 0, sum_log = 0; | ^~~~~~~ src/math.cpp:1086:50: warning: unused variable 'sum_log' [-Wunused-variable] 1086 | long double sum_exp = 0, sum_log = 0; | ^~~~~~~ src/math.cpp:1087:32: warning: unused variable 'adjusted_total' [-Wunused-variable] 1087 | double adjusted_total = total + 1.0; | ^~~~~~~~~~~~~~ src/math.cpp:1088:32: warning: variable 'prior' set but not used [-Wunused-but-set-variable] 1088 | double prior = 0; | ^~~~~ src/math.cpp: In member function 'long int PractRand::Tests::BitMatrix::large_normalize_and_rank()': src/math.cpp:1383:54: warning: unused variable 'rfww' [-Wunused-variable] 1383 | long rfww = ranks_found * ww; | ^~~~ src/math.cpp: In function 'PractRand::Tests::math_normaldist_to_pvalue(double)': src/math.cpp:812:33: warning: 'x' may be used uninitialized [-Wmaybe-uninitialized] 812 | if (midn >= norm) upper_p = midp; | ^~ src/math.cpp:850:35: note: 'x' was declared here 850 | double q, x, r; | ^ src/math.cpp: In function 'PractRand::Tests::math_pvalue_to_normaldist(double)': src/math.cpp:850:35: warning: 'x' may be used uninitialized [-Wmaybe-uninitialized] In function 'PractRand::Tests::math_normaldist_to_pvalue(double)', inlined from 'PractRand::Tests::get_hamming_weight_chances(int, std::vector >&, std::vector >&)' at src/math.cpp:946:40: src/math.cpp:812:33: warning: 'x' may be used uninitialized [-Wmaybe-uninitialized] 812 | if (midn >= norm) upper_p = midp; | ^~ src/math.cpp: In function 'PractRand::Tests::get_hamming_weight_chances(int, std::vector >&, std::vector >&)': src/math.cpp:850:35: note: 'x' was declared here 850 | double q, x, r; | ^ src/platform_specifics.cpp: In function 'bool PractRand::Internals::add_entropy_automatically(PractRand::RNGs::vRNG*, int)': src/platform_specifics.cpp:86:23: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 86 | if (f = std::fopen("/dev/urandom", "rb")) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/rand.cpp: In function 'void PractRand::Internals::test_random_access(PractRand::RNGs::vRNG*, PractRand::RNGs::vRNG*, PractRand::Uint64, PractRand::Uint64)': src/rand.cpp:315:48: warning: comparison of integer expressions of different signedness: 'PractRand::Sint64' {aka 'long long int'} and 'long long unsigned int' [-Wsign-compare] 315 | while (how_far == 0x8000000000000000ull) how_far = known_good->raw64();//we can't negate this value, so the code would fail | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/rand.cpp: In member function 'bool PractRand::RNGs::vRNG::deserialize(const char*, long int)': src/rand.cpp:382:55: warning: comparison of integer expressions of different signedness: 'std::size_t' {aka 'long unsigned int'} and 'long int' [-Wsign-compare] 382 | return deserializer.size_used == size; | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/sha2.cpp: In member function 'void PractRand::Crypto::SHA2_512::finish(PractRand::Uint8*)': src/sha2.cpp:241:52: warning: typedef 'Constants' locally defined but not used [-Wunused-local-typedefs] 241 | typedef SHA2_512_constants Constants; | ^~~~~~~~~ In file included from src/test_batteries.cpp:30: include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleFreq::TripleFreq(int, int)': include/PractRand/Tests/DistFreq4.h:54:29: warning: 'PractRand::Tests::TripleFreq::passes_at_once' will be initialized after [-Wreorder] 54 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:53:29: warning: 'int PractRand::Tests::TripleFreq::blocks_per_pass' [-Wreorder] 53 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:29:25: warning: when initialized here [-Wreorder] 29 | TripleFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreq::TripleMirrorFreq(int, int)': include/PractRand/Tests/DistFreq4.h:82:29: warning: 'PractRand::Tests::TripleMirrorFreq::passes_at_once' will be initialized after [-Wreorder] 82 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:81:29: warning: 'int PractRand::Tests::TripleMirrorFreq::blocks_per_pass' [-Wreorder] 81 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:61:25: warning: when initialized here [-Wreorder] 61 | TripleMirrorFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreqN::TripleMirrorFreqN(int)': include/PractRand/Tests/DistFreq4.h:117:29: warning: 'PractRand::Tests::TripleMirrorFreqN::minimum_level' will be initialized after [-Wreorder] 117 | int minimum_level; | ^~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:116:29: warning: 'int PractRand::Tests::TripleMirrorFreqN::blocks_per_pass' [-Wreorder] 116 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:88:25: warning: when initialized here [-Wreorder] 88 | TripleMirrorFreqN(int minimum_level_) : minimum_level(minimum_level_), blocks_per_pass(1 << minimum_level_) {} | ^~~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorCoup::TripleMirrorCoup(int, int)': include/PractRand/Tests/DistFreq4.h:146:29: warning: 'PractRand::Tests::TripleMirrorCoup::passes_at_once' will be initialized after [-Wreorder] 146 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:145:29: warning: 'int PractRand::Tests::TripleMirrorCoup::blocks_per_pass' [-Wreorder] 145 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:123:25: warning: when initialized here [-Wreorder] 123 | TripleMirrorCoup(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::QuadFreq::QuadFreq(int, int)': include/PractRand/Tests/DistFreq4.h:183:29: warning: 'PractRand::Tests::QuadFreq::passes_at_once' will be initialized after [-Wreorder] 183 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:182:29: warning: 'int PractRand::Tests::QuadFreq::blocks_per_pass' [-Wreorder] 182 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:156:25: warning: when initialized here [-Wreorder] 156 | QuadFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::LPerm16::LPerm16(int, int, int)': include/PractRand/Tests/DistFreq4.h:204:29: warning: 'PractRand::Tests::LPerm16::passes_at_once' will be initialized after [-Wreorder] 204 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:203:29: warning: 'int PractRand::Tests::LPerm16::blocks_per_pass' [-Wreorder] 203 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:190:25: warning: when initialized here [-Wreorder] 190 | LPerm16(int word_bits_, int passes_at_once_ = 0, int blocks_per_pass_ = 1) : word_bits(word_bits_), passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~ In file included from src/tests.cpp:34: include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleFreq::TripleFreq(int, int)': include/PractRand/Tests/DistFreq4.h:54:29: warning: 'PractRand::Tests::TripleFreq::passes_at_once' will be initialized after [-Wreorder] 54 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:53:29: warning: 'int PractRand::Tests::TripleFreq::blocks_per_pass' [-Wreorder] 53 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:29:25: warning: when initialized here [-Wreorder] 29 | TripleFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreq::TripleMirrorFreq(int, int)': include/PractRand/Tests/DistFreq4.h:82:29: warning: 'PractRand::Tests::TripleMirrorFreq::passes_at_once' will be initialized after [-Wreorder] 82 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:81:29: warning: 'int PractRand::Tests::TripleMirrorFreq::blocks_per_pass' [-Wreorder] 81 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:61:25: warning: when initialized here [-Wreorder] 61 | TripleMirrorFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreqN::TripleMirrorFreqN(int)': include/PractRand/Tests/DistFreq4.h:117:29: warning: 'PractRand::Tests::TripleMirrorFreqN::minimum_level' will be initialized after [-Wreorder] 117 | int minimum_level; | ^~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:116:29: warning: 'int PractRand::Tests::TripleMirrorFreqN::blocks_per_pass' [-Wreorder] 116 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:88:25: warning: when initialized here [-Wreorder] 88 | TripleMirrorFreqN(int minimum_level_) : minimum_level(minimum_level_), blocks_per_pass(1 << minimum_level_) {} | ^~~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorCoup::TripleMirrorCoup(int, int)': include/PractRand/Tests/DistFreq4.h:146:29: warning: 'PractRand::Tests::TripleMirrorCoup::passes_at_once' will be initialized after [-Wreorder] 146 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:145:29: warning: 'int PractRand::Tests::TripleMirrorCoup::blocks_per_pass' [-Wreorder] 145 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:123:25: warning: when initialized here [-Wreorder] 123 | TripleMirrorCoup(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::QuadFreq::QuadFreq(int, int)': include/PractRand/Tests/DistFreq4.h:183:29: warning: 'PractRand::Tests::QuadFreq::passes_at_once' will be initialized after [-Wreorder] 183 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:182:29: warning: 'int PractRand::Tests::QuadFreq::blocks_per_pass' [-Wreorder] 182 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:156:25: warning: when initialized here [-Wreorder] 156 | QuadFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::LPerm16::LPerm16(int, int, int)': include/PractRand/Tests/DistFreq4.h:204:29: warning: 'PractRand::Tests::LPerm16::passes_at_once' will be initialized after [-Wreorder] 204 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:203:29: warning: 'int PractRand::Tests::LPerm16::blocks_per_pass' [-Wreorder] 203 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:190:25: warning: when initialized here [-Wreorder] 190 | LPerm16(int word_bits_, int passes_at_once_ = 0, int blocks_per_pass_ = 1) : word_bits(word_bits_), passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Gap16::get_results(std::vector&)': src/tests.cpp:1806:16: warning: unused variable 'cp1' [-Wunused-variable] 1806 | double cp1 = TestResult::suspicion_to_pvalue(s1); | ^~~ src/tests.cpp:1807:16: warning: unused variable 'cp2' [-Wunused-variable] 1807 | double cp2 = TestResult::suspicion_to_pvalue(s2); | ^~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Rep16::get_results(std::vector&)': src/tests.cpp:1862:16: warning: unused variable 'e' [-Wunused-variable] 1862 | double e = len / (65536.0 * 65536.0); | ^ src/tests.cpp: In static member function 'static PractRand::Uint32 PractRand::Tests::DistC6::_reorder_bits(PractRand::Uint32, int, int)': src/tests.cpp:1907:13: warning: unused variable 'tbits' [-Wunused-variable] 1907 | int tbits = bits_per_sample * length; | ^~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::DistC6::init(PractRand::RNGs::vRNG*)': src/tests.cpp:1935:29: warning: unused variable 'rb' [-Wunused-variable] 1935 | int rb = reorder_bits(rc); | ^~ src/tests.cpp:1944:29: warning: unused variable 'rb' [-Wunused-variable] 1944 | int rb = reorder_bits(rc); | ^~ src/tests.cpp: In member function 'virtual void PractRand::Tests::DistC6::get_results(std::vector&)': src/tests.cpp:2197:32: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 2197 | else if (blocks_tested > unitsL * 1024 * 1024 * 16) { | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::DistC7::get_results(std::vector&)': src/tests.cpp:2355:36: warning: comparison of integer expressions of different signedness: 'std::vector::size_type' {aka 'long unsigned int'} and 'long int' [-Wsign-compare] 2355 | if (results.size() == old_results_size + 1) results.back().name += ":even"; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp:2358:36: warning: comparison of integer expressions of different signedness: 'std::vector::size_type' {aka 'long unsigned int'} and 'long int' [-Wsign-compare] 2358 | if (results.size() == old_results_size + 1) results.back().name += ":odd"; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp:2367:28: warning: comparison of integer expressions of different signedness: 'std::vector::size_type' {aka 'long unsigned int'} and 'long int' [-Wsign-compare] 2367 | if (results.size() == old_results_size + 1) results.back().name += ":both"; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp:2368:28: warning: comparison of integer expressions of different signedness: 'std::vector::size_type' {aka 'long unsigned int'} and 'long int' [-Wsign-compare] 2368 | if (results.size() != initial_results_size + 3) return; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BCFN::get_results(std::vector&)': src/tests.cpp:2768:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 2768 | for (int i = 0; i < tempcount.size(); i++) tempcount[i] = counts[level][i]; | ~~^~~~~~~~~~~~~~~~~~ src/tests.cpp:2772:43: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 2772 | for (int i = 0; i < probs.size(); i++) { | ~~^~~~~~~~~~~~~~ src/tests.cpp:2779:43: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 2779 | for (int i = 0; i < probs.size(); i++) probs[i] = p; | ~~^~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BCFN_FF::get_results(std::vector&)': src/tests.cpp:3481:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 3481 | for (int i = 0; i < tempcount.size(); i++) tempcount[i] = counts[level][i]; | ~~^~~~~~~~~~~~~~~~~~ src/tests.cpp:3485:43: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 3485 | for (int i = 0; i < probs.size(); i++) { | ~~^~~~~~~~~~~~~~ src/tests.cpp:3492:43: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 3492 | for (int i = 0; i < probs.size(); i++) probs[i] = p; | ~~^~~~~~~~~~~~~~ src/tests.cpp:3559:40: warning: unused variable 'p' [-Wunused-variable] 3559 | double p = math_chisquared_to_pvalue(tr, reduced_size - 1); | ^ src/tests.cpp:3402:22: warning: unused variable 'ref_chance' [-Wunused-variable] 3402 | const double ref_chance = 1 - chance_skipped[5]; | ^~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BCFN_FF::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:3799:66: warning: variable 'bits3' set but not used [-Wunused-but-set-variable] 3799 | int bits0, bits1, bits2, bits3; | ^~~~~ In file included from src/tests.cpp:26: include/PractRand/Tests/FPF.h: In constructor 'PractRand::Tests::FPF::FPF(int, int, int)': include/PractRand/Tests/FPF.h:11:35: warning: 'PractRand::Tests::FPF::stride_bits_L2' will be initialized after [-Wreorder] 11 | const int stride_bits_L2; | ^~~~~~~~~~~~~~ include/PractRand/Tests/FPF.h:10:35: warning: 'const int PractRand::Tests::FPF::sig_bits' [-Wreorder] 10 | const int sig_bits, exp_bits; | ^~~~~~~~ src/tests.cpp:3946:1: warning: when initialized here [-Wreorder] 3946 | PractRand::Tests::FPF::FPF(int stride_bits_L2_ , int sig_bits_ , int exp_bits_ ) : stride_bits_L2(stride_bits_L2_), sig_bits(sig_bits_), exp_bits(exp_bits_) { | ^~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::FPF::init(PractRand::RNGs::vRNG*)': src/tests.cpp:3959:23: warning: unused variable 'footprint' [-Wunused-variable] 3959 | unsigned long footprint = sig_bits + max_exp; | ^~~~~~~~~ src/tests.cpp:3960:23: warning: unused variable 'stride_bits' [-Wunused-variable] 3960 | unsigned long stride_bits = 1 << stride_bits_L2; | ^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::FPF::get_results(std::vector&)': src/tests.cpp:4014:65: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 4014 | double expected = std::pow(0.5, e+1.0+(e==max_exp?-1:0)) * samples; | ~^~~~~~~~~ src/tests.cpp:4022:51: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 4022 | for (int x = 0; x <= max_sig; x++) intra_probs[x] = intra_p; | ~~^~~~~~~~~~ src/tests.cpp:4032:40: warning: unused variable 'p' [-Wunused-variable] 4032 | double p = math_normaldist_to_pvalue(norm); | ^ src/tests.cpp:4053:24: warning: unused variable 'over_p' [-Wunused-variable] 4053 | double over_p = math_normaldist_to_pvalue(over_norm); | ^~~~~~ src/tests.cpp:4083:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 4083 | for (int e = 0; e <= max_exp; e++) actual_samples += inter_counts[e]; | ~~^~~~~~~~~~ src/tests.cpp:4085:35: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 4085 | for (int e = 0; e <= max_exp; e++) inter_probs[e] = std::pow(0.5, e+1.0+(e==max_exp?-1:0)); | ~~^~~~~~~~~~ src/tests.cpp:4085:91: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 4085 | for (int e = 0; e <= max_exp; e++) inter_probs[e] = std::pow(0.5, e+1.0+(e==max_exp?-1:0)); | ~^~~~~~~~~ src/tests.cpp:4089:24: warning: unused variable 'p' [-Wunused-variable] 4089 | double p = math_normaldist_to_pvalue(norm); | ^ src/tests.cpp: In member function 'virtual void PractRand::Tests::FPF::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:4101:23: warning: unused variable 'footprint' [-Wunused-variable] 4101 | unsigned long footprint = sig_bits + max_exp; | ^~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::FPMulti::get_results(std::vector&)': src/tests.cpp:4574:32: warning: unused variable 'avg' [-Wunused-variable] 4574 | double avg = gap_product_L2 / p.gap_hits; | ^~~ src/tests.cpp:4598:32: warning: unused variable 'avg' [-Wunused-variable] 4598 | double avg = total_gap_product_L2 / total_gap_hits; | ^~~ src/tests.cpp:4494:16: warning: unused variable 'total_samples' [-Wunused-variable] 4494 | Uint64 total_samples = 0; | ^~~~~~~~~~~~~ src/tests.cpp: In member function 'void PractRand::Tests::Birthday32::flush_buffer()': src/tests.cpp:4919:13: warning: unused variable 'running_total' [-Wunused-variable] 4919 | int running_total = 0; | ^~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Birthday32::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:4948:25: warning: unused variable 'ptr' [-Wunused-variable] 4948 | Uint32 *ptr = &buffer[num_buffered]; | ^~~ src/tests.cpp: In static member function 'static void PractRand::Tests::Birthday64::_histogram_in_place_sort64(PractRand::Uint64*, long int, long int, PractRand::Uint32*)': src/tests.cpp:4978:19: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'long int' [-Wsign-compare] 4978 | if (total != length) issue_error("Birthday64::_histogram_sort64 - bad region counts"); | ~~~~~~^~~~~~~~~ src/tests.cpp:5026:66: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint32' {aka 'unsigned int'} [-Wsign-compare] 5026 | for (int x = region_bases2[i]; x < region_bases2[i + 1]; x++) { | ~~^~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In static member function 'static void PractRand::Tests::Birthday64::_histogram_sort64(PractRand::Uint64*, long int, long int, PractRand::Uint32*)': src/tests.cpp:5072:14: warning: unused variable 'begin' [-Wunused-variable] 5072 | long begin = 0; | ^~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Birthday64::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:5183:25: warning: unused variable 'ptr' [-Wunused-variable] 5183 | Uint64 *ptr = &buffer[num_buffered]; | ^~~ src/tests.cpp: In function 'void PractRand::Tests::BirthdayHelpers::radix_sort_and_copy(i128*, i128*, PractRand::Uint64, long int)': src/tests.cpp:5229:22: warning: unused variable 'shift' [-Wunused-variable] 5229 | long shift = 64 - SORT_HELPER_BITS - bits_already; | ^~~~~ src/tests.cpp: In function 'void PractRand::Tests::BirthdayHelpers::histogram_in_place_sort128(i128*, PractRand::Uint64, long int, PractRand::Uint64*)': src/tests.cpp:5367:66: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint32' {aka 'unsigned int'} [-Wsign-compare] 5367 | for (int x = region_bases2[i]; x < region_bases2[i + 1]; x++) { | ~~^~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In function 'void PractRand::Tests::BirthdayHelpers::_sorted_deltas_of_sorted_values(i128*, long int, PractRand::Uint64*)': src/tests.cpp:5406:38: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'long int' [-Wsign-compare] 5406 | for (Uint64 i = 0; i < length - 1; i++) { | ~~^~~~~~~~~~~~ src/tests.cpp:5419:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 5419 | for (int i = 0; i < spills.size(); i++) base[length - 1 - spills.size() + i] = spills[i]; | ~~^~~~~~~~~~~~~~~ src/tests.cpp:5435:38: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'long int' [-Wsign-compare] 5435 | for (Uint64 i = 0; i < length - 1; i++) { | ~~^~~~~~~~~~~~ src/tests.cpp:5448:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 5448 | for (int i = 0; i < spills.size(); i++) base[length - 1 - spills.size() + i] = spills[i]; | ~~^~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual PractRand::Uint64 PractRand::Tests::BirthdayLamda1::flush_buffer()': src/tests.cpp:5583:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 5583 | for (int i = 0; i < spills.size(); i++) buffer[buffer_size - 1 - spills.size() + i] = spills[i]; | ~~^~~~~~~~~~~~~~~ src/tests.cpp:5596:27: warning: comparison of integer expressions of different signedness: 'int' and 'long long unsigned int' [-Wsign-compare] 5596 | for (int i = 0; i < buffer_size - 2; i++) { | ~~^~~~~~~~~~~~~~~~~ src/tests.cpp:5600:34: warning: comparison of integer expressions of different signedness: 'int' and 'long long unsigned int' [-Wsign-compare] 5600 | while (i < buffer_size - 2 && buffer[i] == buffer[i + 1]) i++; | ~~^~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BirthdayLamda1::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:5639:65: warning: right operand of comma operator has no effect [-Wunused-value] 5639 | mask_high = Uint64(Sint64(-1)), mask_low; | ^ src/tests.cpp: In member function 'void PractRand::Tests::BirthdaySystematic128::do_incomplete_buffer()': src/tests.cpp:5682:40: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 5682 | if (p1 == already_sorted) { | ~~~^~~~~~~~~~~~~~~~~ src/tests.cpp:5687:51: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 5687 | while (p1 < already_sorted) buffer[p3++] = buffer[p1++]; | ~~~^~~~~~~~~~~~~~~~ src/tests.cpp:5694:64: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 5694 | if (p1 == already_sorted) break; | ~~~^~~~~~~~~~~~~~~~~ src/tests.cpp:5680:84: warning: unused variable 'max' [-Wunused-variable] 5680 | Uint64 p1 = 0, p2 = already_sorted, p3 = half_buffer_size, max = half_buffer_size + num_buffered; | ^~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BirthdaySystematic128::get_results(std::vector&)': src/tests.cpp:5762:36: warning: comparison of integer expressions of different signedness: 'int' and 'const PractRand::Uint64' {aka 'const long long unsigned int'} [-Wsign-compare] 5762 | if (already_sorted < half_buffer_size && already_sorted < num_buffered) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ src/tests.cpp:5762:73: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint64' {aka 'long long unsigned int'} [-Wsign-compare] 5762 | if (already_sorted < half_buffer_size && already_sorted < num_buffered) { | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BirthdaySystematic128::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:5859:65: warning: right operand of comma operator has no effect [-Wunused-value] 5859 | mask_high = Uint64(Sint64(-1)), mask_low; | ^ src/tests.cpp: In static member function 'static void PractRand::Tests::BirthdayAlt::_lookup_constants(int, long double*, long double*, long double*)': src/tests.cpp:5943:21: warning: unused variable 'offset' [-Wunused-variable] 5943 | long double offset, dev, samples; | ^~~~~~ src/tests.cpp:5943:29: warning: unused variable 'dev' [-Wunused-variable] 5943 | long double offset, dev, samples; | ^~~ src/tests.cpp:5943:34: warning: unused variable 'samples' [-Wunused-variable] 5943 | long double offset, dev, samples; | ^~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BirthdayAlt::get_results(std::vector&)': src/tests.cpp:5954:14: warning: unused variable 'buffer_size' [-Wunused-variable] 5954 | long buffer_size = 1 << buffer_size_L2; | ^~~~~~~~~~~ src/tests.cpp:5955:40: warning: unused variable 'uncertainty' [-Wunused-variable] 5955 | long double dev, _sample_size, uncertainty; | ^~~~~~~~~~~ src/tests.cpp: In member function 'void PractRand::Tests::BirthdayAlt::flush_buffer()': src/tests.cpp:6005:37: warning: unused variable 'preadj' [-Wunused-variable] 6005 | long double preadj = std::pow(2.0, 128.0 - i) / (bufsize - 1); | ^~~~~~ src/tests.cpp:5970:75: warning: unused variable 'uncertainty' [-Wunused-variable] 5970 | long double expected_log_offset, expected_log_samples, deviation, uncertainty; | ^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::CoupGap::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:6312:16: warning: unused variable 'oblocks' [-Wunused-variable] 6312 | Uint64 oblocks = blocks_tested; | ^~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BRank_old::init(PractRand::RNGs::vRNG*)': src/tests.cpp:6363:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 6363 | for (int i = 0; i < ps.size(); i++) ps[i].reset(); | ~~^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BRank_old::get_results(std::vector&)': src/tests.cpp:6393:29: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 6393 | for (int si = 0; si < ps.size(); si++) { | ~~~^~~~~~~~~~~ src/tests.cpp:6415:58: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 6415 | if (s.outliers.size()) for (int i = 0; i < s.outliers.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ src/tests.cpp:6416:43: warning: comparison of integer expressions of different signedness: '__gnu_cxx::__alloc_traits, unsigned int>::value_type' {aka 'unsigned int'} and 'int' [-Wsign-compare] 6416 | if (s.outliers[i] > worst) worst = s.outliers[i]; src/tests.cpp:6403:21: warning: unused variable 'L2' [-Wunused-variable] 6403 | int L2 = int(std::log((double)s.total)/std::log(2.0)); | ^~ src/tests.cpp: In member function 'void PractRand::Tests::BRank_old::pick_next_size()': src/tests.cpp:6449:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 6449 | for (int i = 0; i < ps.size(); i++) { | ~~^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BRank_old::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:6511:44: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 6511 | if (blocks_to_skip > numblocks) blocks_to_skip = numblocks; | ~~~~~~~~~~~~~~~^~~~~~~~~~~ src/tests.cpp:6519:39: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint32' {aka 'unsigned int'} [-Wsign-compare] 6519 | if (numblocks >= blocks_needed) {//whole matrix | ~~~~~~~~~~^~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'PractRand::Uint64 PractRand::Tests::BRank::calculate_size_step(PractRand::Uint64) const': src/tests.cpp:6604:34: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint64' {aka 'long long unsigned int'} [-Wsign-compare] 6604 | for (l2s = 0; (1 << l2s) < matrix_size; l2s++) ; | ~~~~~~~~~~~^~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::BRank::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:6697:44: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 6697 | if (blocks_to_skip > numblocks) blocks_to_skip = numblocks; | ~~~~~~~~~~~~~~~^~~~~~~~~~~ src/tests.cpp:6708:39: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint64' {aka 'long long unsigned int'} [-Wsign-compare] 6708 | if (numblocks < blocks_needed) { | ~~~~~~~~~~^~~~~~~~~~~~~~~ src/tests.cpp: In member function 'int PractRand::Tests::NearSeq::get_extra_distance(const Word*, int) const': src/tests.cpp:6971:13: warning: unused variable 'bits_left' [-Wunused-variable] 6971 | int bits_left = CORE_SEQUENCE_BITS; | ^~~~~~~~~ src/tests.cpp:6973:13: warning: unused variable 'pos' [-Wunused-variable] 6973 | int pos = 0; | ^~~ src/tests.cpp: In function 'std::vector convolve_signals(std::vector, std::vector)': src/tests.cpp:7046:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 7046 | for (int x = 0; x < s1.size(); x++) { | ~~^~~~~~~~~~~ src/tests.cpp:7047:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 7047 | for (int y = 0; y < s2.size(); y++) { | ~~^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::NearSeq2::get_results(std::vector&)': src/tests.cpp:7421:24: warning: unused variable 'raw1' [-Wunused-variable] 7421 | double raw1 = cores_valid.get_result(); | ^~~~ src/tests.cpp:7424:24: warning: unused variable 'n2' [-Wunused-variable] 7424 | double n2 = math_chisquared_to_normal(raw2, 1); | ^~ src/tests.cpp:7426:24: warning: unused variable 'p2' [-Wunused-variable] 7426 | double p2 = math_chisquared_to_pvalue(raw2, 1); | ^~ src/tests.cpp:7562:48: warning: unused variable 'p' [-Wunused-variable] 7562 | double p = math_normaldist_to_pvalue(n); | ^ src/tests.cpp: In member function 'virtual void PractRand::Tests::mod3_simple::get_results(std::vector&)': src/tests.cpp:7862:45: warning: comparison of integer expressions of different signedness: 'int' and 'PractRand::Uint64' {aka 'long long unsigned int'} [-Wsign-compare] 7862 | if (reduced >= cat) reduced -= cat; | ~~~~~~~~^~~~~~ src/tests.cpp:7844:16: warning: unused variable 'samples' [-Wunused-variable] 7844 | Uint64 samples = blocks_tested * TestBlock::SIZE / sizeof(Word)-EXP + 1; | ^~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::mod3_simple::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:7910:59: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7910 | for (unsigned long i = EXP - 1; i < max; i++) { | ~~^~~~~ src/tests.cpp:7916:53: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7916 | for (unsigned long i = 0; i < max; i++) { | ~~^~~~~ src/tests.cpp:7927:59: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7927 | for (unsigned long i = EXP - 1; i < max; i++) { | ~~^~~~~ src/tests.cpp:7933:53: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7933 | for (unsigned long i = 0; i < max; i++) { | ~~^~~~~ src/tests.cpp:7944:59: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7944 | for (unsigned long i = EXP - 1; i < max; i++) { | ~~^~~~~ src/tests.cpp:7950:53: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7950 | for (unsigned long i = 0; i < max; i++) { | ~~^~~~~ src/tests.cpp:7961:59: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7961 | for (unsigned long i = EXP - 1; i < max; i++) { | ~~^~~~~ src/tests.cpp:7967:53: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 7967 | for (unsigned long i = 0; i < max; i++) { | ~~^~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::mod3n::get_results(std::vector&)': src/tests.cpp:8012:24: warning: unused variable 'E' [-Wunused-variable] 8012 | double E = predicted_samples / effective_K; | ^ src/tests.cpp: In member function 'virtual void PractRand::Tests::mod3n::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8153:51: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 8153 | for (i = 0; levels[1].warmup && i < max; i += 4) { | ~~^~~~~ src/tests.cpp:8159:26: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'int' [-Wsign-compare] 8159 | for (; i < max; i += 4) { | ~~^~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Coup16::get_results(std::vector&)': src/tests.cpp:8274:24: warning: unused variable 'weight' [-Wunused-variable] 8274 | double weight = -std::log(p); | ^~~~~~ src/tests.cpp:8251:16: warning: unused variable 'eebar' [-Wunused-variable] 8251 | double eebar = 0.001; | ^~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::DistFreq4::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8407:43: warning: comparison of integer expressions of different signedness: 'PractRand::Uint32' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8407 | while (base_index <= end_index - (ALIGNMENTS_PER_WORD << SIZE2)) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp:8416:40: warning: comparison of integer expressions of different signedness: 'PractRand::Uint32' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8416 | if (base_index < end_index) {//partial word | ~~~~~~~~~~~^~~~~~~~~~~ src/tests.cpp:8418:51: warning: comparison of integer expressions of different signedness: 'PractRand::Uint32' {aka 'unsigned int'} and 'int' [-Wsign-compare] 8418 | while (base_index < end_index) { | ~~~~~~~~~~~^~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::TripleMirrorFreq::get_results(std::vector&)': src/tests.cpp:8613:27: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 8613 | if (blocks_tested < repeat_blocks) return; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::TripleMirrorFreq::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8651:30: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 8651 | while (blocks_tested < get_blocks_to_repeat()) { | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::TripleMirrorCoup::get_results(std::vector&)': src/tests.cpp:8836:27: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 8836 | if (blocks_tested < repeat_blocks) return; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::TripleMirrorCoup::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8874:30: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 8874 | while (blocks_tested < get_blocks_to_repeat()) { | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::LPerm16::get_results(std::vector&)': src/tests.cpp:11053:37: warning: zero-length gnu_printf format string [-Wformat-zero-length] 11053 | std::printf(""); | ^~ src/tests.cpp:11087:24: warning: unused variable 'observed_ratio' [-Wunused-variable] 11087 | double observed_ratio = lperm8_chances[i] / chance; | ^~~~~~~~~~~~~~ src/tests.cpp:11088:21: warning: unused variable 'low_odds' [-Wunused-variable] 11088 | int low_odds = lperm4_greaterthan[low] - lperm4_lessthan[low]; | ^~~~~~~~ src/tests.cpp:11089:21: warning: unused variable 'high_odds' [-Wunused-variable] 11089 | int high_odds = lperm4_greaterthan[high] - lperm4_lessthan[high]; | ^~~~~~~~~ src/tests.cpp:8987:19: warning: unused variable 'fact4' [-Wunused-variable] 8987 | const int fact4 = 24; | ^~~~~ src/tests.cpp:8993:13: warning: unused variable 'lperm4_incomparable' [-Wunused-variable] 8993 | int lperm4_incomparable[8] = { 0, 1, 0, 1, 1, 0, 1, 0 }; | ^~~~~~~~~~~~~~~~~~~ src/tests.cpp:8995:13: warning: variable 'lperm8_greaterthan' set but not used [-Wunused-but-set-variable] 8995 | int lperm8_greaterthan[128]; | ^~~~~~~~~~~~~~~~~~ src/tests.cpp:8996:13: warning: variable 'lperm8_lessthan' set but not used [-Wunused-but-set-variable] 8996 | int lperm8_lessthan[128]; | ^~~~~~~~~~~~~~~ src/tests.cpp:8997:13: warning: unused variable 'lperm8_incomparable' [-Wunused-variable] 8997 | int lperm8_incomparable[128]; | ^~~~~~~~~~~~~~~~~~~ src/tests.cpp: In function 'std::string combine_transform_names(const std::string&, const std::string&)': src/tests.cpp:11278:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 11278 | if (a.first != prefix.length()) return fail; | ~~~~~~~~^~~~~~~~~~~~~~~~~~ src/tests.cpp:11279:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 11279 | if (b.first > name.length()) return fail; | ~~~~~~~~^~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Transforms::switching::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:11362:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 11362 | if (++which == subtests.tests.size()) which = 0; | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'virtual void PractRand::Tests::Transforms::Transform_Baseclass::flush(bool)': src/tests.cpp:11380:35: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 11380 | int old = (blocks_already > blocks_to_repeat) ? blocks_to_repeat : (int)blocks_already; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ src/tests.cpp:11386:38: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 11386 | int newold = (blocks_already > blocks_to_repeat) ? blocks_to_repeat : (int)blocks_already; | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ In file included from src/tests.cpp:19: include/PractRand/test_helpers.h: In instantiation of 'PractRand::Tests::VariableSizeCount::VariableSizeCount() [with LowIntType = unsigned char]': src/tests.cpp:1889:32: required from here include/PractRand/test_helpers.h:138:29: warning: 'PractRand::Tests::VariableSizeCount::size' will be initialized after [-Wreorder] 138 | int size; | ^~~~ include/PractRand/test_helpers.h:136:37: warning: 'unsigned char* PractRand::Tests::VariableSizeCount::low' [-Wreorder] 136 | LowIntType *low; | ^~~ include/PractRand/test_helpers.h:153:25: warning: when initialized here [-Wreorder] 153 | VariableSizeCount() : size(0), low(NULL), high(NULL) {} | ^~~~~~~~~~~~~~~~~ include/PractRand/test_helpers.h: In instantiation of 'PractRand::Tests::VariableSizeCount::VariableSizeCount() [with LowIntType = short unsigned int]': src/tests.cpp:2652:74: required from here include/PractRand/test_helpers.h:138:29: warning: 'PractRand::Tests::VariableSizeCount::size' will be initialized after [-Wreorder] 138 | int size; | ^~~~ include/PractRand/test_helpers.h:136:37: warning: 'short unsigned int* PractRand::Tests::VariableSizeCount::low' [-Wreorder] 136 | LowIntType *low; | ^~~ include/PractRand/test_helpers.h:153:25: warning: when initialized here [-Wreorder] 153 | VariableSizeCount() : size(0), low(NULL), high(NULL) {} | ^~~~~~~~~~~~~~~~~ src/tests.cpp: At global scope: src/tests.cpp:7801:14: warning: 'PractRand::Uint8 combine_mod3s(PractRand::Uint8, PractRand::Uint8, PractRand::Uint8, PractRand::Uint8)' defined but not used [-Wunused-function] 7801 | static Uint8 combine_mod3s(Uint8 a, Uint8 b, Uint8 c, Uint8 d) { return mod3_table[a + b + c + d]; } | ^~~~~~~~~~~~~ src/tests.cpp:7800:14: warning: 'PractRand::Uint8 combine_mod3s(PractRand::Uint8, PractRand::Uint8, PractRand::Uint8)' defined but not used [-Wunused-function] 7800 | static Uint8 combine_mod3s(Uint8 a, Uint8 b, Uint8 c) { return mod3_table[a + b + c]; } | ^~~~~~~~~~~~~ src/tests.cpp:3898:22: warning: 'long unsigned int count_high_zeroes32(PractRand::Uint32)' defined but not used [-Wunused-function] 3898 | static unsigned long count_high_zeroes32(Uint32 value) { | ^~~~~~~~~~~~~~~~~~~ src/tests.cpp:87:20: warning: 'long double gap_log2_variance(long double)' defined but not used [-Wunused-function] 87 | static long double gap_log2_variance(long double chance_of_gap1 = 1.0 / 65536) { | ^~~~~~~~~~~~~~~~~ src/tests.cpp:53:20: warning: 'long double gap_variance(long double)' defined but not used [-Wunused-function] 53 | static long double gap_variance(long double chance_of_gap1 = 1.0 / 65536) { | ^~~~~~~~~~~~ src/tests.cpp: In member function 'PractRand::Tests::Rep16::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:1841:37: warning: array subscript -1 is below array bounds of 'Uint16[512]' [-Warray-bounds] 1841 | old1 = data->as16[-1]; | ~~~~~~~~~~~~~^ In file included from src/tests.cpp:17: include/PractRand/tests.h:40:32: note: while referencing 'as16' 40 | Uint16 as16[SIZE/2]; | ^~~~ src/tests.cpp:1842:37: warning: array subscript -2 is below array bounds of 'Uint16[512]' [-Warray-bounds] 1842 | old2 = data->as16[-2]; | ~~~~~~~~~~~~~^ include/PractRand/tests.h:40:32: note: while referencing 'as16' 40 | Uint16 as16[SIZE/2]; | ^~~~ src/tests.cpp: In member function 'PractRand::Tests::BirthdayLamda1::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:5631:46: warning: 'mask_low' may be used uninitialized [-Wmaybe-uninitialized] 5631 | dest->low = cur[LOW] & mask_low; | ~~~~~~~~~^~~~~~~~~~ src/tests.cpp:5614:48: note: 'mask_low' was declared here 5614 | Uint64 mask_high = Uint64(Sint64(-1)), mask_low; | ^~~~~~~~ src/tests.cpp: In member function 'PractRand::Tests::TripleMirrorFreq::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8668:67: warning: array subscript -1 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8668 | Uint8 a = data[0].as8[base_pos - 0], b = data[0].as8[base_pos - ofs], c = data[0].as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp:8668:100: warning: array subscript -16133 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8668 | Uint8 a = data[0].as8[base_pos - 0], b = data[0].as8[base_pos - ofs], c = data[0].as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp:8668:139: warning: array subscript -32265 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8668 | Uint8 a = data[0].as8[base_pos - 0], b = data[0].as8[base_pos - ofs], c = data[0].as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp: In member function 'PractRand::Tests::TripleMirrorCoup::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:8892:65: warning: array subscript -1 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8892 | Uint8 a = data->as8[base_pos - 0], b = data->as8[base_pos - ofs], c = data->as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp:8892:96: warning: array subscript -16133 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8892 | Uint8 a = data->as8[base_pos - 0], b = data->as8[base_pos - ofs], c = data->as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp:8892:133: warning: array subscript -32265 is below array bounds of 'Uint8[1024]' [-Warray-bounds] 8892 | Uint8 a = data->as8[base_pos - 0], b = data->as8[base_pos - ofs], c = data->as8[base_pos - ofs - ofs];// if BLOCK_STEP is used | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:39:32: note: while referencing 'as8' 39 | Uint8 as8 [SIZE ]; | ^~~ src/tests.cpp: In member function 'PractRand::Tests::FPF::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:4193:52: warning: array subscript -2 is below array bounds of 'Uint32[256]' [-Warray-bounds] 4193 | cur = data->as32[-2];// | ~~~~~~~~~~~~~^ include/PractRand/tests.h:41:32: note: while referencing 'as32' 41 | Uint32 as32[SIZE/4]; | ^~~~ src/tests.cpp:4129:53: warning: array subscript -1 is below array bounds of 'Uint32[256]' [-Warray-bounds] 4129 | cur = reverse_bits32(data->as32[-1]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ include/PractRand/tests.h:41:32: note: while referencing 'as32' 41 | Uint32 as32[SIZE/4]; | ^~~~ src/tests.cpp: In member function 'PractRand::Tests::NearSeq2::test_blocks(PractRand::Tests::TestBlock*, int)': src/tests.cpp:7615:79: warning: array subscript -2 is below array bounds of 'Uint64[128]' [-Warray-bounds] 7615 | else if (WORD_BITS == 64) w = data[0].as64[pos]; | ~~~~~~~~~~~~~~~~^ include/PractRand/tests.h:42:32: note: while referencing 'as64' 42 | Uint64 as64[SIZE/8]; | ^~~~ src/tests.cpp: In member function 'PractRand::Tests::BirthdayAlt::flush_buffer()': src/tests.cpp:5978:65: warning: 'expected_log_offset' may be used uninitialized [-Wmaybe-uninitialized] 5978 | long double adjusted_expected_log2 = expected_log2 * (1 + expected_log_offset); | ~~~^~~~~~~~~~~~~~~~~~~~~~ src/tests.cpp:5970:21: note: 'expected_log_offset' was declared here 5970 | long double expected_log_offset, expected_log_samples, deviation, uncertainty; | ^~~~~~~~~~~~~~~~~~~ src/tests.cpp: In member function 'PractRand::Tests::NearSeq2::get_results(std::vector >&)': src/tests.cpp:7587:91: warning: 'low.hbin' may be used uninitialized [-Wmaybe-uninitialized] 7587 | os1 << get_name() << ":EB:L:" << low.bucket << "_" << low.hbin << "_" << low.ebit; | ^~~ src/tests.cpp:7541:23: note: 'low.hbin' was declared here 7541 | Entry low, high; | ^~~ src/tests.cpp:7592:105: warning: 'high.ebit' may be used uninitialized [-Wmaybe-uninitialized] 7592 | os2 << get_name() << ":EB:H:" << high.bucket << "_" << high.hbin << "_" << high.ebit; | ^~~~ src/tests.cpp:7541:28: note: 'high.ebit' was declared here 7541 | Entry low, high; | ^~~~ src/tests.cpp:7587:102: warning: 'low.ebit' may be used uninitialized [-Wmaybe-uninitialized] 7587 | os1 << get_name() << ":EB:L:" << low.bucket << "_" << low.hbin << "_" << low.ebit; | ^~~~ src/tests.cpp:7541:23: note: 'low.ebit' was declared here 7541 | Entry low, high; | ^~~ src/tests.cpp:7592:73: warning: 'high.bucket' may be used uninitialized [-Wmaybe-uninitialized] 7592 | os2 << get_name() << ":EB:H:" << high.bucket << "_" << high.hbin << "_" << high.ebit; | ^~~ src/tests.cpp:7541:28: note: 'high.bucket' was declared here 7541 | Entry low, high; | ^~~~ src/tests.cpp:7587:72: warning: 'low.bucket' may be used uninitialized [-Wmaybe-uninitialized] 7587 | os1 << get_name() << ":EB:L:" << low.bucket << "_" << low.hbin << "_" << low.ebit; | ^~~ src/tests.cpp:7541:23: note: 'low.bucket' was declared here 7541 | Entry low, high; | ^~~ src/tests.cpp:7592:93: warning: 'high.hbin' may be used uninitialized [-Wmaybe-uninitialized] 7592 | os2 << get_name() << ":EB:H:" << high.bucket << "_" << high.hbin << "_" << high.ebit; | ^~~ src/tests.cpp:7541:28: note: 'high.hbin' was declared here 7541 | Entry low, high; | ^~~~ src/tests.cpp:7526:52: warning: 'worst_p' may be used uninitialized [-Wmaybe-uninitialized] 7526 | if (worst_p < 0.5) worst_p *= NUM_BUCKETS; | ~~~~~~~~^~~~~~~~~~~~~~ src/tests.cpp:7488:21: note: 'worst_p' was declared here 7488 | int worst_p; | ^~~~~~~ src/tests.cpp:7530:54: warning: 'worst_b' may be used uninitialized [-Wmaybe-uninitialized] 7530 | os << get_name() << ":WB" << worst_b; | ^~~~~~~ src/tests.cpp:7487:21: note: 'worst_b' was declared here 7487 | int worst_b; | ^~~~~~~ src/RNGs/efiix.cpp:59:1: warning: multi-line comment [-Wcomment] 59 | //#define EFIIX_ALGORITHM(BITS, SHIFT_AMOUNT) \ | ^ src/RNGs/efiix.cpp:75:1: warning: multi-line comment [-Wcomment] 75 | //#define EFIIX_ALGORITHM(BITS, SHIFT_AMOUNT) \ | ^ src/RNGs/efiix.cpp:90:1: warning: multi-line comment [-Wcomment] 90 | //#define EFIIX_ALGORITHM(BITS, SHIFT_AMOUNT) \ | ^ src/RNGs/efiix.cpp: In member function 'PractRand::Uint8 PractRand::RNGs::Raw::efiix8x48::raw8()': src/RNGs/efiix.cpp:237:22: warning: typedef 'check_efiix_array_sizes' locally defined but not used [-Wunused-local-typedefs] 237 | typedef Word check_efiix_array_sizes[(ITERATION_SIZE & (ITERATION_SIZE-1)) || (INDIRECTION_SIZE & (INDIRECTION_SIZE-1)) ? -1 : 1]; | ^~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: In member function 'void PractRand::RNGs::Raw::efiix8x48::seed(PractRand::Uint64, PractRand::Uint64, PractRand::Uint64, PractRand::Uint64)': src/RNGs/efiix.cpp:246:27: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 246 | for (int x = 0; x < 1 + (64 / (8 * sizeof(Word))); x++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: In member function 'PractRand::Uint16 PractRand::RNGs::Raw::efiix16x48::raw16()': src/RNGs/efiix.cpp:312:22: warning: typedef 'check_efiix_array_sizes' locally defined but not used [-Wunused-local-typedefs] 312 | typedef Word check_efiix_array_sizes[(ITERATION_SIZE & (ITERATION_SIZE-1)) || (INDIRECTION_SIZE & (INDIRECTION_SIZE-1)) ? -1 : 1]; | ^~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: In member function 'PractRand::Uint32 PractRand::RNGs::Raw::efiix32x48::raw32()': src/RNGs/efiix.cpp:343:22: warning: typedef 'check_efiix_array_sizes' locally defined but not used [-Wunused-local-typedefs] 343 | typedef Word check_efiix_array_sizes[(ITERATION_SIZE & (ITERATION_SIZE-1)) || (INDIRECTION_SIZE & (INDIRECTION_SIZE-1)) ? -1 : 1]; | ^~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: In member function 'PractRand::Uint64 PractRand::RNGs::Raw::efiix64x48::raw64()': src/RNGs/efiix.cpp:386:22: warning: typedef 'check_efiix_array_sizes' locally defined but not used [-Wunused-local-typedefs] 386 | typedef Word check_efiix_array_sizes[(ITERATION_SIZE & (ITERATION_SIZE-1)) || (INDIRECTION_SIZE & (INDIRECTION_SIZE-1)) ? -1 : 1]; | ^~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: At global scope: src/RNGs/efiix.cpp:346:13: warning: 'void mix4x32(PractRand::Uint32&, PractRand::Uint32&, PractRand::Uint32&, PractRand::Uint32&)' defined but not used [-Wunused-function] 346 | static void mix4x32(Uint32 &a, Uint32 &b, Uint32 &c, Uint32 &d) { | ^~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ In file included from src/RNGs/efiix.cpp:8: include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long)' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)', inlined from 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)' at src/RNGs/efiix.cpp:22:117: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h: In member function 'PractRand::RNGs::Polymorphic::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp: In member function 'PractRand::RNGs::Raw::efiix8x48::seed(unsigned long long, unsigned long long, unsigned long long, unsigned long long)': src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^~~~~~~~~~~~~~~~~ src/RNGs/salsa.cpp:203:13: warning: 'void test_salsa(PractRand::Uint32, const PractRand::Uint32*, bool, PractRand::Uint32, PractRand::Uint32, PractRand::Uint32)' defined but not used [-Wunused-function] 203 | static void test_salsa ( Uint32 rounds, const Uint32 *seed_and_iv, bool short_seed, Uint32 expected0, Uint32 index, Uint32 expected1) { | ^~~~~~~~~~ src/RNGs/other/fibonacci.cpp: In member function 'virtual PractRand::Uint64 PractRand::RNGs::Polymorphic::NotRecommended::bigbadlcg64X::raw64()': src/RNGs/other/fibonacci.cpp:56:62: warning: unused variable 'carry' [-Wunused-variable] 56 | bool carry = state[shift_i] < old; | ^~~~~ src/RNGs/other/indirection.cpp: In member function 'PractRand::Uint16 PractRand::RNGs::Polymorphic::NotRecommended::genindC::refill()': src/RNGs/other/indirection.cpp:580:45: warning: unused variable 'size' [-Wunused-variable] 580 | int size = 1 << table_size_L2; | ^~~~ src/RNGs/other/simple.cpp: In member function 'virtual PractRand::Uint64 PractRand::RNGs::Polymorphic::NotRecommended::xoroshiro128plus_2p64::raw64()': src/RNGs/other/simple.cpp:212:59: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare] 212 | for (int i = 0; i < sizeof JUMP / sizeof *JUMP; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/other/simple.cpp: At global scope: src/RNGs/other/simple.cpp:663:47: warning: 'PractRand::Uint64 PractRand::RNGs::Polymorphic::NotRecommended::shift_array64(PractRand::Uint64*, long unsigned int)' defined but not used [-Wunused-function] 663 | static Uint64 shift_array64(Uint64 vec[2], unsigned long bits) { | ^~~~~~~~~~~~~ In file included from src/RNGs/other/transform.cpp:10: include/PractRand/RNGs/other/transform.h: In constructor 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::GeneralizedTableTransform(PractRand::RNGs::vRNG*, const Entry*, std::string)': include/PractRand/RNGs/other/transform.h:83:47: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::base_rng' will be initialized after [-Wreorder] 83 | vRNG *base_rng; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' will be initialized after [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:76:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_data' [-Wreorder] 76 | Uint32 buf_data; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/RNGs/other/transform.cpp: In member function 'virtual void PractRand::RNGs::Polymorphic::NotRecommended::Xor::refill()': src/RNGs/other/transform.cpp:233:63: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 233 | for (int sri = 1; sri < source_rngs.size(); sri++) { | ~~~~^~~~~~~~~~~~~~~~~~~~ src/RNGs/other/transform.cpp: In member function 'virtual std::string PractRand::RNGs::Polymorphic::NotRecommended::Xor::get_name() const': src/RNGs/other/transform.cpp:240:63: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 240 | for (int sri = 0; sri < source_rngs.size(); sri++) { | ~~~~^~~~~~~~~~~~~~~~~~~~ + g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -o practrand-RNG_test tools/RNG_test.cpp arbee.o chacha.o efiix.o fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o -I include -I tools -pthread -std=c++11 -O3 -g In file included from tools/RNG_test.cpp:27: include/PractRand/RNGs/other/transform.h: In constructor 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::GeneralizedTableTransform(PractRand::RNGs::vRNG*, const Entry*, std::string)': include/PractRand/RNGs/other/transform.h:83:47: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::base_rng' will be initialized after [-Wreorder] 83 | vRNG *base_rng; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' will be initialized after [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:76:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_data' [-Wreorder] 76 | Uint32 buf_data; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from tools/RNG_test.cpp:50: tools/TestManager.h: In member function 'int TestManager::prep_blocks(PractRand::Uint64&)': tools/TestManager.h:66:27: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 66 | if (_delta_blocks > max_buffer_amount) _delta_blocks = max_buffer_amount; | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In file included from tools/RNG_test.cpp:53: tools/MultithreadedTestManager.h: In member function 'void MultithreadedTestManager::multithreaded_prep_blocks(PractRand::Uint64)': tools/MultithreadedTestManager.h:77:43: warning: comparison of integer expressions of different signedness: 'PractRand::Uint64' {aka 'long long unsigned int'} and 'int' [-Wsign-compare] 77 | main_blocks = (num_blocks > max_buffer_amount) ? max_buffer_amount : Uint32(num_blocks); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp: In function 'void show_checkpoint(TestManager&, int, PractRand::Uint64, double, bool, double, bool)': tools/RNG_test.cpp:320:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 320 | for (int i = 0; i < results.size(); i++) { | ~~^~~~~~~~~~~~~~~~ tools/RNG_test.cpp:330:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 330 | for (int i = 0; i < results.size(); i++) { | ~~^~~~~~~~~~~~~~~~ tools/RNG_test.cpp:342:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector::size_type' {aka 'long unsigned int'} [-Wsign-compare] 342 | for (int i = 0; i < marked.size(); i++) { | ~~^~~~~~~~~~~~~~~ tools/RNG_test.cpp: In function 'double interpret_length(const std::string&, bool)': tools/RNG_test.cpp:363:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 363 | for (; pos < lengthstr.size(); pos++) { | ~~~~^~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp:370:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 370 | if (pos == lengthstr.size()) return std::pow(2.0,value) * mode_factor; | ~~~~^~~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp:374:28: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 374 | for (; pos < lengthstr.size(); pos++,sig*=0.1) { | ~~~~^~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp:380:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 380 | if (pos == lengthstr.size()) return std::pow(2.0,value) * mode_factor; | ~~~~^~~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp:419:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 419 | if (pos == lengthstr.size()) { | ~~~~^~~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp:428:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 428 | if (pos != lengthstr.size()) return 0; | ~~~~^~~~~~~~~~~~~~~~~~~ tools/RNG_test.cpp: In function 'bool interpret_seed(const std::string&, PractRand::Uint64&)': tools/RNG_test.cpp:436:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string::size_type' {aka 'long unsigned int'} [-Wsign-compare] 436 | while (position < seedstr.length()) { | ~~~~~~~~~^~~~~~~~~~~~~~~~~~ In file included from tools/RNG_test.cpp:452: include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleFreq::TripleFreq(int, int)': include/PractRand/Tests/DistFreq4.h:54:29: warning: 'PractRand::Tests::TripleFreq::passes_at_once' will be initialized after [-Wreorder] 54 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:53:29: warning: 'int PractRand::Tests::TripleFreq::blocks_per_pass' [-Wreorder] 53 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:29:25: warning: when initialized here [-Wreorder] 29 | TripleFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreq::TripleMirrorFreq(int, int)': include/PractRand/Tests/DistFreq4.h:82:29: warning: 'PractRand::Tests::TripleMirrorFreq::passes_at_once' will be initialized after [-Wreorder] 82 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:81:29: warning: 'int PractRand::Tests::TripleMirrorFreq::blocks_per_pass' [-Wreorder] 81 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:61:25: warning: when initialized here [-Wreorder] 61 | TripleMirrorFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorFreqN::TripleMirrorFreqN(int)': include/PractRand/Tests/DistFreq4.h:117:29: warning: 'PractRand::Tests::TripleMirrorFreqN::minimum_level' will be initialized after [-Wreorder] 117 | int minimum_level; | ^~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:116:29: warning: 'int PractRand::Tests::TripleMirrorFreqN::blocks_per_pass' [-Wreorder] 116 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:88:25: warning: when initialized here [-Wreorder] 88 | TripleMirrorFreqN(int minimum_level_) : minimum_level(minimum_level_), blocks_per_pass(1 << minimum_level_) {} | ^~~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::TripleMirrorCoup::TripleMirrorCoup(int, int)': include/PractRand/Tests/DistFreq4.h:146:29: warning: 'PractRand::Tests::TripleMirrorCoup::passes_at_once' will be initialized after [-Wreorder] 146 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:145:29: warning: 'int PractRand::Tests::TripleMirrorCoup::blocks_per_pass' [-Wreorder] 145 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:123:25: warning: when initialized here [-Wreorder] 123 | TripleMirrorCoup(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::QuadFreq::QuadFreq(int, int)': include/PractRand/Tests/DistFreq4.h:183:29: warning: 'PractRand::Tests::QuadFreq::passes_at_once' will be initialized after [-Wreorder] 183 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:182:29: warning: 'int PractRand::Tests::QuadFreq::blocks_per_pass' [-Wreorder] 182 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:156:25: warning: when initialized here [-Wreorder] 156 | QuadFreq(int passes_at_once_, int blocks_per_pass_) : passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~~ include/PractRand/Tests/DistFreq4.h: In constructor 'PractRand::Tests::LPerm16::LPerm16(int, int, int)': include/PractRand/Tests/DistFreq4.h:204:29: warning: 'PractRand::Tests::LPerm16::passes_at_once' will be initialized after [-Wreorder] 204 | int passes_at_once; | ^~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:203:29: warning: 'int PractRand::Tests::LPerm16::blocks_per_pass' [-Wreorder] 203 | int blocks_per_pass; | ^~~~~~~~~~~~~~~ include/PractRand/Tests/DistFreq4.h:190:25: warning: when initialized here [-Wreorder] 190 | LPerm16(int word_bits_, int passes_at_once_ = 0, int blocks_per_pass_ = 1) : word_bits(word_bits_), passes_at_once(passes_at_once_), blocks_per_pass(blocks_per_pass_) {} | ^~~~~~~ In file included from tools/RNG_test.cpp:55: tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = long long unsigned int; int ROTATE = 29; int RSHIFT = 9; int LSHIFT = 3]': tools/Candidate_RNGs.h:269:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned int; int ROTATE = 13; int RSHIFT = 7; int LSHIFT = 3]': tools/Candidate_RNGs.h:270:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = short unsigned int; int ROTATE = 7; int RSHIFT = 3; int LSHIFT = 2]': tools/Candidate_RNGs.h:271:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned char; int ROTATE = 3; int RSHIFT = 2; int LSHIFT = 2]': tools/Candidate_RNGs.h:272:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:166:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:166:1: note: at offset 16 into source object '' of size 32 166 | POLYMORPHIC_CANDIDATE(ranrot_variant, 64) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:167:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:167:1: note: at offset 16 into source object '' of size 32 167 | POLYMORPHIC_CANDIDATE(ranrot_variant, 32) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:168:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:168:1: note: at offset 16 into source object '' of size 32 168 | POLYMORPHIC_CANDIDATE(ranrot_variant, 16) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:509:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:509:1: note: at offset 16 into source object '' of size 32 509 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 64) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:510:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:510:1: note: at offset 16 into source object '' of size 32 510 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 32) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:511:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:511:1: note: at offset 16 into source object '' of size 32 511 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 16) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:512:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:512:1: note: at offset 16 into source object '' of size 32 512 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 8) | ^ + g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -o practrand-RNG_output tools/RNG_output.cpp arbee.o chacha.o efiix.o fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o -I include -I tools -pthread -std=c++11 -O3 -g In file included from tools/RNG_output.cpp:31: include/PractRand/RNGs/other/transform.h: In constructor 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::GeneralizedTableTransform(PractRand::RNGs::vRNG*, const Entry*, std::string)': include/PractRand/RNGs/other/transform.h:83:47: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::base_rng' will be initialized after [-Wreorder] 83 | vRNG *base_rng; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ include/PractRand/RNGs/other/transform.h:77:48: warning: 'PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_count' will be initialized after [-Wreorder] 77 | Uint32 buf_count; | ^~~~~~~~~ include/PractRand/RNGs/other/transform.h:76:48: warning: 'PractRand::Uint32 PractRand::RNGs::Polymorphic::NotRecommended::GeneralizedTableTransform::buf_data' [-Wreorder] 76 | Uint32 buf_data; | ^~~~~~~~ include/PractRand/RNGs/other/transform.h:87:41: warning: when initialized here [-Wreorder] 87 | GeneralizedTableTransform(vRNG *rng, const Entry *table_, std::string name_) : table(table_), base_rng(rng), buf_count(0), buf_data(0), name(name_) {} | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from tools/RNG_output.cpp:42: tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = long long unsigned int; int ROTATE = 29; int RSHIFT = 9; int LSHIFT = 3]': tools/Candidate_RNGs.h:269:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned int; int ROTATE = 13; int RSHIFT = 7; int LSHIFT = 3]': tools/Candidate_RNGs.h:270:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = short unsigned int; int ROTATE = 7; int RSHIFT = 3; int LSHIFT = 2]': tools/Candidate_RNGs.h:271:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned char; int ROTATE = 3; int RSHIFT = 2; int LSHIFT = 2]': tools/Candidate_RNGs.h:272:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ + g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -o practrand-RNG_benchmark tools/RNG_benchmark.cpp arbee.o chacha.o efiix.o fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o -I include -I tools -pthread -std=c++11 -O3 -g In file included from tools/RNG_benchmark.cpp:35: tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = long long unsigned int; int ROTATE = 29; int RSHIFT = 9; int LSHIFT = 3]': tools/Candidate_RNGs.h:269:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned int; int ROTATE = 13; int RSHIFT = 7; int LSHIFT = 3]': tools/Candidate_RNGs.h:270:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = short unsigned int; int ROTATE = 7; int RSHIFT = 3; int LSHIFT = 2]': tools/Candidate_RNGs.h:271:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ tools/Candidate_RNGs.h: In instantiation of 'Word Candidates::_VeryFast::_raw_native() [with Word = unsigned char; int ROTATE = 3; int RSHIFT = 2; int LSHIFT = 2]': tools/Candidate_RNGs.h:272:99: required from here tools/Candidate_RNGs.h:187:22: warning: unused variable 'old' [-Wunused-variable] 187 | Word old; | ^~~ tools/Candidate_RNGs.h:188:28: warning: unused variable 'K' [-Wunused-variable] 188 | const Word K = Word(0x92ec64765925a395ull); | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [17, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [19, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [21, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [23, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [25, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset [27, 29] into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In member function 'seed', inlined from 'seed' at include/PractRand/RNGs/efiix8x48.h:25:31, inlined from 'seed' at src/RNGs/efiix.cpp:20:83: src/RNGs/efiix.cpp:263:73: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 263 | indirection_table[y + mask + 1] = b ^ iterated; | ^ include/PractRand/RNGs/efiix8x48.h: In member function 'seed': include/PractRand/RNGs/efiix8x48.h:19:38: note: at offset 29 into destination object 'indirection_table' of size 16 19 | Word indirection_table[INDIRECTION_SIZE], iteration_table[ITERATION_SIZE]; | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:166:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:166:1: note: at offset 16 into source object '' of size 32 166 | POLYMORPHIC_CANDIDATE(ranrot_variant, 64) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:167:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:167:1: note: at offset 16 into source object '' of size 32 167 | POLYMORPHIC_CANDIDATE(ranrot_variant, 32) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:168:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 17 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:168:1: note: at offset 16 into source object '' of size 32 168 | POLYMORPHIC_CANDIDATE(ranrot_variant, 16) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:509:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:509:1: note: at offset 16 into source object '' of size 32 509 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 64) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:510:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:510:1: note: at offset 16 into source object '' of size 32 510 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 32) | ^ In function 'copy', inlined from '__ct ' at /usr/include/c++/12/bits/basic_string.h:683:23, inlined from 'operator+' at /usr/include/c++/12/bits/basic_string.h:3563:43, inlined from 'get_name' at tools/Candidate_RNGs.h:511:1: /usr/include/c++/12/bits/char_traits.h:435:56: warning: '__builtin_memcpy' reading 18 bytes from a region of size 16 [-Wstringop-overread] 435 | return static_cast(__builtin_memcpy(__s1, __s2, __n)); | ^ tools/Candidate_RNGs.h: In member function 'get_name': tools/Candidate_RNGs.h:511:1: note: at offset 16 into source object '' of size 32 511 | SEEDED_POLYMORPHIC_CANDIDATE(sfc_alternative, 16) | ^ + help2man --no-discard-stderr --include=doc/practrand-RNG_test.examples ./practrand-RNG_test + help2man --no-discard-stderr ./practrand-RNG_output + help2man --no-discard-stderr ./practrand-RNG_benchmark + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.6XEyxc + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64 ++ dirname /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64 + cd PractRand-0.951 + mkdir -p /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/doc/practrand + mv doc/license.txt . + mkdir -p /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/man/man1 + install -Dp -m0644 practrand-RNG_benchmark.1 practrand-RNG_output.1 practrand-RNG_test.1 /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/man/man1 + mkdir -p /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/bin + install -Dp -m0755 practrand-RNG_test practrand-RNG_output practrand-RNG_benchmark /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/bin + /usr/bin/find-debuginfo -j32 --strict-build-id -m -i --build-id-seed 0.951-1.oc9 --unique-debug-suffix -0.951-1.oc9.x86_64 --unique-debug-src-base practrand-0.951-1.oc9.x86_64 -S debugsourcefiles.list /builddir/build/BUILD/PractRand-0.951 extracting debug info from /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/bin/practrand-RNG_output extracting debug info from /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/bin/practrand-RNG_benchmark extracting debug info from /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/bin/practrand-RNG_test 4402 blocks + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/OpenCloudOS/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/OpenCloudOS/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/OpenCloudOS/brp-mangle-shebangs Processing files: practrand-0.951-1.oc9.x86_64 + /usr/lib/rpm/OpenCloudOS/brp-python-bytecompile '' 1 0 + /usr/lib/rpm/OpenCloudOS/brp-python-hardlink Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.RWOAoH + umask 022 + cd /builddir/build/BUILD + cd PractRand-0.951 + DOCDIR=/builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/doc/practrand + export LC_ALL=C + LC_ALL=C + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/doc/practrand + cp -pr doc/ /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/doc/practrand + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.BJJJKe + umask 022 + cd /builddir/build/BUILD + cd PractRand-0.951 + LICENSEDIR=/builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/licenses/practrand + export LC_ALL=C + LC_ALL=C + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/licenses/practrand + cp -pr license.txt /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64/usr/share/licenses/practrand + RPM_EC=0 ++ jobs -p + exit 0 Provides: practrand = 0.951-1.oc9 practrand(x86-64) = 0.951-1.oc9 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.38)(64bit) libc.so.6(GLIBC_2.4)(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_3.3.1)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libm.so.6(GLIBC_2.29)(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.8)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.19)(64bit) libstdc++.so.6(GLIBCXX_3.4.20)(64bit) libstdc++.so.6(GLIBCXX_3.4.21)(64bit) libstdc++.so.6(GLIBCXX_3.4.26)(64bit) libstdc++.so.6(GLIBCXX_3.4.29)(64bit) libstdc++.so.6(GLIBCXX_3.4.30)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) rtld(GNU_HASH) Processing files: practrand-debugsource-0.951-1.oc9.x86_64 Provides: practrand-debugsource = 0.951-1.oc9 practrand-debugsource(x86-64) = 0.951-1.oc9 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: practrand-debuginfo-0.951-1.oc9.x86_64 Provides: debuginfo(build-id) = 082fa984d1b7e27f83c97d443a99e593dc4f6fd3 debuginfo(build-id) = d43f7606210d1ac90ca4d25134ded7cf4fbc86a4 debuginfo(build-id) = e130b47fd4a32298ca99af135b9ecde48922e072 practrand-debuginfo = 0.951-1.oc9 practrand-debuginfo(x86-64) = 0.951-1.oc9 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: practrand-debugsource(x86-64) = 0.951-1.oc9 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/practrand-0.951-1.oc9.x86_64 Wrote: /builddir/build/RPMS/practrand-debugsource-0.951-1.oc9.x86_64.rpm Wrote: /builddir/build/RPMS/practrand-0.951-1.oc9.x86_64.rpm Wrote: /builddir/build/RPMS/practrand-debuginfo-0.951-1.oc9.x86_64.rpm Child return code was: 0