Mock Version: 5.9 Mock Version: 5.9 Mock Version: 5.9 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target aarch64 --nodeps /builddir/build/SPECS/libpar2.spec'], chrootPath='/var/lib/mock/f41-build-55545540-6536518/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=201600uid=1000gid=425user='mockbuild'unshare_net=TrueprintOutput=Falsenspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']) Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '7906ad027ebc43b09be5a893984e1b40', '-D', '/var/lib/mock/f41-build-55545540-6536518/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target aarch64 --nodeps /builddir/build/SPECS/libpar2.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', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: aarch64 Building for target aarch64 setting SOURCE_DATE_EPOCH=1721260800 Wrote: /builddir/build/SRPMS/libpar2-0.2-42.fc41.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target aarch64 --nodeps /builddir/build/SPECS/libpar2.spec'], chrootPath='/var/lib/mock/f41-build-55545540-6536518/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=201600uid=1000gid=425user='mockbuild'unshare_net=TrueprintOutput=Falsenspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']) Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '49a9e73c7bef4904864d2747657fad84', '-D', '/var/lib/mock/f41-build-55545540-6536518/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.bvq819m1:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target aarch64 --nodeps /builddir/build/SPECS/libpar2.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', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: aarch64 Building for target aarch64 setting SOURCE_DATE_EPOCH=1721260800 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.yGwk4B + umask 022 + cd /builddir/build/BUILD/libpar2-0.2-build + test -d /builddir/build/BUILD/libpar2-0.2-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/libpar2-0.2-build + /usr/bin/rm -rf /builddir/build/BUILD/libpar2-0.2-build + /usr/bin/mkdir -p /builddir/build/BUILD/libpar2-0.2-build + /usr/bin/mkdir -p /builddir/build/BUILD/libpar2-0.2-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.4bRTuQ + umask 022 + cd /builddir/build/BUILD/libpar2-0.2-build + cd /builddir/build/BUILD/libpar2-0.2-build + rm -rf libpar2-0.2 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/libpar2-0.2.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd libpar2-0.2 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . Patch #0 (libpar2-0.2-cancel.patch): + echo 'Patch #0 (libpar2-0.2-cancel.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p2 --fuzz=0 patching file par2repairer.cpp Hunk #2 succeeded at 405 (offset -1 lines). Hunk #3 succeeded at 587 (offset -1 lines). Hunk #4 succeeded at 841 (offset -1 lines). Hunk #5 succeeded at 890 (offset -1 lines). Hunk #6 succeeded at 1243 (offset -1 lines). Hunk #7 succeeded at 1600 (offset -1 lines). Hunk #8 succeeded at 1693 (offset -1 lines). Hunk #9 succeeded at 2338 (offset -1 lines). Hunk #10 succeeded at 2404 (offset -1 lines). Hunk #11 succeeded at 2427 (offset -1 lines). patching file par2repairer.h Hunk #1 succeeded at 181 (offset -5 lines). Patch #1 (libpar2-0.2-bugfixes.patch): + echo 'Patch #1 (libpar2-0.2-bugfixes.patch):' + /usr/bin/patch --no-backup-if-mismatch -f -p2 --fuzz=0 patching file par2repairer.cpp Hunk #1 succeeded at 78 (offset 2 lines). Hunk #2 succeeded at 1301 (offset 41 lines). Hunk #3 succeeded at 1853 (offset 50 lines). patching file par2repairer.h + chmod -x commandline.cpp crc.cpp creatorpacket.cpp criticalpacket.cpp datablock.cpp descriptionpacket.cpp diskfile.cpp filechecksummer.cpp galois.cpp libpar2.cpp mainpacket.cpp md5.cpp par1fileformat.cpp par1repairer.cpp par1repairersourcefile.cpp par2cmdline.cpp par2creator.cpp par2creatorsourcefile.cpp par2fileformat.cpp par2repairer.cpp par2repairersourcefile.cpp parheaders.cpp recoverypacket.cpp reedsolomon.cpp verificationhashtable.cpp verificationpacket.cpp commandline.h config.h crc.h creatorpacket.h criticalpacket.h datablock.h descriptionpacket.h diskfile.h filechecksummer.h galois.h letype.h libpar2.h mainpacket.h md5.h par1fileformat.h par1repairer.h par1repairersourcefile.h par2cmdline.h par2creator.h par2creatorsourcefile.h par2fileformat.h par2repairer.h par2repairersourcefile.h parheaders.h recoverypacket.h reedsolomon.h verificationhashtable.h verificationpacket.h ChangeLog + touch tmpfile -r README + sed -i 's/\r//' README + touch -r tmpfile README + touch tmpfile -r ROADMAP + sed -i 's/\r//' ROADMAP + touch -r tmpfile ROADMAP + touch tmpfile -r AUTHORS + sed -i 's/\r//' AUTHORS + touch -r tmpfile AUTHORS + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.6MGQqn + umask 022 + cd /builddir/build/BUILD/libpar2-0.2-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd libpar2-0.2 + libtoolize libtoolize: putting auxiliary files in '.'. libtoolize: linking file './ltmain.sh' libtoolize: You should add the contents of the following files to 'aclocal.m4': libtoolize: '/usr/share/aclocal/libtool.m4' libtoolize: '/usr/share/aclocal/ltoptions.m4' libtoolize: '/usr/share/aclocal/ltsugar.m4' libtoolize: '/usr/share/aclocal/ltversion.m4' libtoolize: '/usr/share/aclocal/lt~obsolete.m4' libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. + autoreconf -i libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. configure.ac:29: warning: 'AM_CONFIG_HEADER': this macro is obsolete. configure.ac:29: You should use the 'AC_CONFIG_HEADERS' macro instead. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:10162: AM_CONFIG_HEADER is expanded from... configure.ac:29: the top level configure.ac:30: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:9846: AM_INIT_AUTOMAKE is expanded from... configure.ac:30: the top level configure.ac:35: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete. configure.ac:35: You should run autoupdate. ./lib/autoconf/c.m4:270: AC_LANG_CPLUSPLUS is expanded from... configure.ac:35: the top level configure.ac:39: warning: The macro 'AC_PROG_LIBTOOL' is obsolete. configure.ac:39: You should run autoupdate. aclocal.m4:122: AC_PROG_LIBTOOL is expanded from... configure.ac:39: the top level configure.ac:40: warning: The macro 'AM_PROG_LIBTOOL' is obsolete. configure.ac:40: You should run autoupdate. aclocal.m4:123: AM_PROG_LIBTOOL is expanded from... configure.ac:40: the top level configure.ac:47: warning: The macro 'AC_HEADER_STDC' is obsolete. configure.ac:47: You should run autoupdate. ./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from... configure.ac:47: the top level configure.ac:30: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see: configure.ac:30: https://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation configure.ac:39: installing './compile' Makefile.am:51: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + '[' '-flto=auto -ffat-lto-objectsx' '!=' x ']' ++ find . -type f -name configure -print + for file in $(find . -type f -name configure -print) + /usr/bin/sed -r --in-place=.backup 's/^char \(\*f\) \(\) = /__attribute__ ((used)) char (*f) () = /g' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed -r --in-place=.backup 's/^char \(\*f\) \(\);/__attribute__ ((used)) char (*f) ();/g' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed -r --in-place=.backup 's/^char \$2 \(\);/__attribute__ ((used)) char \$2 ();/g' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed --in-place=.backup '1{$!N;$!N};$!N;s/int x = 1;\nint y = 0;\nint z;\nint nan;/volatile int x = 1; volatile int y = 0; volatile int z, nan;/;P;D' ./configure + diff -u ./configure.backup ./configure + mv ./configure.backup ./configure + /usr/bin/sed --in-place=.backup 's#^lt_cv_sys_global_symbol_to_cdecl=.*#lt_cv_sys_global_symbol_to_cdecl="sed -n -e '\''s/^T .* \\(.*\\)$/extern int \\1();/p'\'' -e '\''s/^$symcode* .* \\(.*\\)$/extern char \\1;/p'\''"#' ./configure + diff -u ./configure.backup ./configure --- ./configure.backup 2024-12-12 00:02:09.317479993 +0000 +++ ./configure 2024-12-12 00:02:09.829485025 +0000 @@ -7895,7 +7895,7 @@ # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" @@ -19434,7 +19434,7 @@ compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' + '[' 1 = 1 ']' +++ dirname ./configure ++ find . -name config.guess -o -name config.sub + for i in $(find $(dirname ./configure) -name config.guess -o -name config.sub) ++ basename ./config.guess + '[' -f /usr/lib/rpm/redhat/config.guess ']' + /usr/bin/rm -f ./config.guess ++ basename ./config.guess + /usr/bin/cp -fv /usr/lib/rpm/redhat/config.guess ./config.guess '/usr/lib/rpm/redhat/config.guess' -> './config.guess' + for i in $(find $(dirname ./configure) -name config.guess -o -name config.sub) ++ basename ./config.sub + '[' -f /usr/lib/rpm/redhat/config.sub ']' + /usr/bin/rm -f ./config.sub ++ basename ./config.sub + /usr/bin/cp -fv /usr/lib/rpm/redhat/config.sub ./config.sub '/usr/lib/rpm/redhat/config.sub' -> './config.sub' + '[' 1 = 1 ']' + '[' x '!=' 'x-Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' ']' ++ find . -name ltmain.sh + for i in $(find . -name ltmain.sh) + /usr/bin/sed -i.backup -e 's~compiler_flags=$~compiler_flags="-Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld"~' ./ltmain.sh ++ grep -q runstatedir=DIR ./configure ++ echo --runstatedir=/run + ./configure --build=aarch64-redhat-linux-gnu --host=aarch64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --runstatedir=/run --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-static checking build system type... aarch64-redhat-linux-gnu checking host system type... aarch64-redhat-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/missing: Unknown `--is-lightweight' option Try `/builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/missing --help' for more information configure: WARNING: 'missing' script is too old or missing checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C++... yes checking whether g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking whether make supports the include directive... yes (GNU style) checking dependency style of g++... none checking how to print strings... printf checking for aarch64-redhat-linux-gnu-gcc... gcc checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking how to convert aarch64-redhat-linux-gnu file names to aarch64-redhat-linux-gnu format... func_convert_file_noop checking how to convert aarch64-redhat-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for aarch64-redhat-linux-gnu-file... no checking for file... file checking for aarch64-redhat-linux-gnu-objdump... no checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for aarch64-redhat-linux-gnu-dlltool... no checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for aarch64-redhat-linux-gnu-ar... no checking for ar... ar checking for archiver @FILE support... @ checking for aarch64-redhat-linux-gnu-strip... no checking for strip... strip checking for aarch64-redhat-linux-gnu-ranlib... no checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ./configure: line 7901: -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p': No such file or directory ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for aarch64-redhat-linux-gnu-mt... no checking for mt... no checking if : is a manifest tool... no checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... yes checking if g++ static flag -static works... no checking if g++ supports -c -o file.o... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for main in -lstdc++... yes checking for main in -lsigc-2.0... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for _Bool... no checking for stdbool.h that conforms to C99 or later... yes checking for egrep... (cached) /usr/bin/grep -E checking for stdio.h... (cached) yes checking for endian.h... yes checking for getopt.h... yes checking for aarch64-redhat-linux-gnu-pkg-config... /usr/bin/aarch64-redhat-linux-gnu-pkg-config checking pkg-config is at least version 0.9.0... yes checking for sigc++-2.0 ... yes checking for size_t... yes checking whether byte ordering is bigendian... no checking for an ANSI C-conforming const... yes checking for inline... inline checking for gcc option to enable large file support... none needed checking for declarations of fseeko and ftello... yes checking for working memcmp... yes checking for stricmp... no checking for strcasecmp... yes checking for strchr... yes checking for memcpy... yes checking for getopt... yes checking for getopt_long... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands + make -j12 make all-am make[1]: Entering directory '/builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o libpar2.lo libpar2.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o parheaders.lo parheaders.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2cmdline.lo par2cmdline.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o commandline.lo commandline.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o crc.lo crc.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o creatorpacket.lo creatorpacket.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o criticalpacket.lo criticalpacket.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o datablock.lo datablock.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o descriptionpacket.lo descriptionpacket.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o diskfile.lo diskfile.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o filechecksummer.lo filechecksummer.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o galois.lo galois.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c libpar2.cpp -fPIC -DPIC -o .libs/libpar2.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c datablock.cpp -fPIC -DPIC -o .libs/datablock.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c parheaders.cpp -fPIC -DPIC -o .libs/parheaders.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c criticalpacket.cpp -fPIC -DPIC -o .libs/criticalpacket.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c diskfile.cpp -fPIC -DPIC -o .libs/diskfile.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c filechecksummer.cpp -fPIC -DPIC -o .libs/filechecksummer.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c creatorpacket.cpp -fPIC -DPIC -o .libs/creatorpacket.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c crc.cpp -fPIC -DPIC -o .libs/crc.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2cmdline.cpp -fPIC -DPIC -o .libs/par2cmdline.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c galois.cpp -fPIC -DPIC -o .libs/galois.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c descriptionpacket.cpp -fPIC -DPIC -o .libs/descriptionpacket.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c commandline.cpp -fPIC -DPIC -o .libs/commandline.o /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o mainpacket.lo mainpacket.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c mainpacket.cpp -fPIC -DPIC -o .libs/mainpacket.o In file included from par2cmdline.h:264, from datablock.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from diskfile.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from criticalpacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from crc.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from filechecksummer.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from descriptionpacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ In file included from par2cmdline.h:264, from commandline.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from galois.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ In file included from par2cmdline.h:264, from creatorpacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from par2cmdline.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from libpar2.h:5, from libpar2.cpp:1: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o md5.lo md5.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par1fileformat.lo par1fileformat.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par1repairer.lo par1repairer.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par1repairersourcefile.lo par1repairersourcefile.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2creator.lo par2creator.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2creatorsourcefile.lo par2creatorsourcefile.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c md5.cpp -fPIC -DPIC -o .libs/md5.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par1fileformat.cpp -fPIC -DPIC -o .libs/par1fileformat.o /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2fileformat.lo par2fileformat.cpp /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2repairer.lo par2repairer.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par1repairersourcefile.cpp -fPIC -DPIC -o .libs/par1repairersourcefile.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par1repairer.cpp -fPIC -DPIC -o .libs/par1repairer.o In file included from par2cmdline.h:264, from mainpacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2creator.cpp -fPIC -DPIC -o .libs/par2creator.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2creatorsourcefile.cpp -fPIC -DPIC -o .libs/par2creatorsourcefile.o In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2fileformat.cpp -fPIC -DPIC -o .libs/par2fileformat.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2repairer.cpp -fPIC -DPIC -o .libs/par2repairer.o libpar2.cpp: In member function 'LibPar2::PreProcess()': libpar2.cpp:57:10: warning: 'result' may be used uninitialized [-Wmaybe-uninitialized] 57 | return result; | ^~~~~~ libpar2.cpp:41:10: note: 'result' was declared here 41 | Result result; | ^~~~~~ libpar2.cpp: In member function 'LibPar2::Process(bool)': libpar2.cpp:77:10: warning: 'result' may be used uninitialized [-Wmaybe-uninitialized] 77 | return result; | ^~~~~~ libpar2.cpp:61:10: note: 'result' was declared here 61 | Result result; | ^~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o par2repairersourcefile.lo par2repairersourcefile.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c par2repairersourcefile.cpp -fPIC -DPIC -o .libs/par2repairersourcefile.o In file included from par2cmdline.h:264, from md5.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from par1fileformat.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from par1repairer.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from par1repairersourcefile.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from par2creator.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o recoverypacket.lo recoverypacket.cpp par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from par2creatorsourcefile.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c recoverypacket.cpp -fPIC -DPIC -o .libs/recoverypacket.o In file included from par2cmdline.h:264, from par2repairer.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:264, from par2fileformat.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::LoadRecoveryFile(std::string)': par1repairer.cpp:327:87: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 327 | (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::LoadOtherRecoveryFiles(std::string)': par1repairer.cpp:521:48: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 521 | (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::LoadExtraRecoveryFiles(const std::__cxx11::list&)': par1repairer.cpp:552:48: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 552 | (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::VerifyExtraFiles(const std::__cxx11::list&)': par1repairer.cpp:655:48: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 655 | (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:266: reedsolomon.h: In instantiation of 'ReedSolomon::ReedSolomon() [with g = Galois<8, 285, unsigned char>]': par1repairer.cpp:32:32: required from here 32 | Par1Repairer::Par1Repairer(void) | ^ reedsolomon.h:118:19: warning: ignoring return value of 'bool std::vector<_Tp, _Alloc>::empty() const [with _Tp = RSOutputRow; _Alloc = std::allocator]', declared with attribute 'nodiscard' [-Wunused-result] 118 | outputrows.empty(); | ~~~~~~~~~~~~~~~~^~ In file included from /usr/include/c++/14/vector:66, from par2cmdline.h:241: /usr/include/c++/14/bits/stl_vector.h:1090:7: note: declared here 1090 | empty() const _GLIBCXX_NOEXCEPT | ^~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o reedsolomon.lo reedsolomon.cpp reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<8, 285, unsigned char>]': par1repairer.cpp:1205:28: required from here 1205 | bool success = rs.Compute(noiselevel); | ~~~~~~~~~~^~~~~~~~~~~~ reedsolomon.h:227:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 227 | memset(leftmatrix, 0, outcount * incount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here 57 | class Galois | ^~~~~~ reedsolomon.h:235:11: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 235 | memset(rightmatrix, 0, outcount *outcount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here 57 | class Galois | ^~~~~~ In file included from par2cmdline.h:266: reedsolomon.h: In instantiation of 'ReedSolomon::ReedSolomon() [with g = Galois<16, 69643, short unsigned int>]': par2creator.cpp:49:29: required from here 49 | , deferhashcomputation(false) | ^ reedsolomon.h:118:19: warning: ignoring return value of 'bool std::vector<_Tp, _Alloc>::empty() const [with _Tp = RSOutputRow; _Alloc = std::allocator]', declared with attribute 'nodiscard' [-Wunused-result] 118 | outputrows.empty(); | ~~~~~~~~~~~~~~~~^~ In file included from /usr/include/c++/14/vector:66, from par2cmdline.h:241: /usr/include/c++/14/bits/stl_vector.h:1090:7: note: declared here 1090 | empty() const _GLIBCXX_NOEXCEPT | ^~~~~ reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<16, 69643, short unsigned int>]': par2creator.cpp:863:18: required from here 863 | if (!rs.Compute(noiselevel)) | ~~~~~~~~~~^~~~~~~~~~~~ reedsolomon.h:227:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 227 | memset(leftmatrix, 0, outcount * incount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here 57 | class Galois | ^~~~~~ reedsolomon.h:235:11: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 235 | memset(rightmatrix, 0, outcount *outcount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here 57 | class Galois | ^~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ par2repairer.cpp: In member function 'bool Par2Repairer::LoadPacketsFromFile(std::string)': par2repairer.cpp:455:19: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct PACKET_HEADER' with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 455 | memcpy(&header, current, sizeof(header)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par2fileformat.h:62:8: note: 'struct PACKET_HEADER' declared here 62 | struct PACKET_HEADER | ^~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c reedsolomon.cpp -fPIC -DPIC -o .libs/reedsolomon.o In file included from par2cmdline.h:264, from par2repairersourcefile.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:266: reedsolomon.h: In instantiation of 'ReedSolomon::ReedSolomon() [with g = Galois<16, 69643, short unsigned int>]': par2repairer.cpp:30:32: required from here 30 | Par2Repairer::Par2Repairer(void) | ^ reedsolomon.h:118:19: warning: ignoring return value of 'bool std::vector<_Tp, _Alloc>::empty() const [with _Tp = RSOutputRow; _Alloc = std::allocator]', declared with attribute 'nodiscard' [-Wunused-result] 118 | outputrows.empty(); | ~~~~~~~~~~~~~~~~^~ In file included from /usr/include/c++/14/vector:66, from par2cmdline.h:241: /usr/include/c++/14/bits/stl_vector.h:1090:7: note: declared here 1090 | empty() const _GLIBCXX_NOEXCEPT | ^~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o verificationhashtable.lo verificationhashtable.cpp In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<16, 69643, short unsigned int>]': par2repairer.cpp:2233:28: required from here 2233 | bool success = rs.Compute(noiselevel); | ~~~~~~~~~~^~~~~~~~~~~~ reedsolomon.h:227:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 227 | memset(leftmatrix, 0, outcount * incount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here 57 | class Galois | ^~~~~~ reedsolomon.h:235:11: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess] 235 | memset(rightmatrix, 0, outcount *outcount * sizeof(G)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here 57 | class Galois | ^~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c -o verificationpacket.lo verificationpacket.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c verificationhashtable.cpp -fPIC -DPIC -o .libs/verificationhashtable.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c verificationpacket.cpp -fPIC -DPIC -o .libs/verificationpacket.o In file included from par2cmdline.h:264, from recoverypacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:264, from reedsolomon.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from verificationhashtable.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:264, from verificationpacket.cpp:20: par2fileformat.h:67:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::hash' 67 | MD5Hash hash; // Hash of entire packet excepting the first 3 fields | ^~~~ par2fileformat.h:68:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PACKET_HEADER::setid' 68 | MD5Hash setid; // Normally computed as the Hash of body of "Main Packet" | ^~~~~ par2fileformat.h:79:18: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONENTRY::hash' 79 | MD5Hash hash; | ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' 84 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' 86 | MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name | ^~~~~~ par2fileformat.h:87:25: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' 87 | FILEVERIFICATIONENTRY entries[]; | ^~~~~~~ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' 99 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' 101 | MD5Hash fileid; // MD5hash of [hash16k, length, name] | ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 102 | MD5Hash hashfull; // MD5 Hash of the whole file | ^~~~~~~~ par2fileformat.h:103:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hash16k' 103 | MD5Hash hash16k; // MD5 Hash of the first 16k of the file | ^~~~~~~ par2fileformat.h:127:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER MAINPACKET::header' 127 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:131:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' 131 | MD5Hash fileid[0]; | ^~~~~~ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' 141 | PACKET_HEADER header; | ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' 151 | PACKET_HEADER header; | ^~~~~~ In file included from par2cmdline.h:283: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 69 | return crc < r.crc || crc == r.crc && hash < r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'bool VerificationHashEntry::operator>(const VerificationHashEntry&) const': verificationhashtable.h:73:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 73 | return crc > r.crc || crc == r.crc && hash > r.hash; | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ verificationhashtable.h: In static member function 'static const VerificationHashEntry* VerificationHashEntry::Search(const VerificationHashEntry*, const MD5Hash&)': verificationhashtable.h:186:47: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 186 | if (entry->crc < crc || entry->crc == crc && entry->hash < hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 190 | else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h: In member function 'const VerificationHashEntry* VerificationHashTable::FindMatch(const VerificationHashEntry*, const Par2RepairerSourceFile*, FileCheckSummer&, bool&) const': verificationhashtable.h:405:54: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 405 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 412 | checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 429 | checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ In file included from par2cmdline.h:288: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' 41 | MD5Hash controlhash; | ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' 42 | MD5Hash sethash; | ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' 56 | MD5Hash hashfull; | ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' 57 | MD5Hash hash16k; | ^~~~~~~ /bin/sh ./libtool --tag=CXX --mode=link g++ -Wall -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -version-info 0:1:0 -Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -o libpar2.la -rpath /usr/lib64 libpar2.lo parheaders.lo par2cmdline.lo commandline.lo crc.lo creatorpacket.lo criticalpacket.lo datablock.lo descriptionpacket.lo diskfile.lo filechecksummer.lo galois.lo mainpacket.lo md5.lo par1fileformat.lo par1repairer.lo par1repairersourcefile.lo par2creator.lo par2creatorsourcefile.lo par2fileformat.lo par2repairer.lo par2repairersourcefile.lo recoverypacket.lo reedsolomon.lo verificationhashtable.lo verificationpacket.lo -lsigc-2.0 -lstdc++ libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/aarch64-redhat-linux/14/../../../../lib64/crti.o /usr/lib/gcc/aarch64-redhat-linux/14/crtbeginS.o .libs/libpar2.o .libs/parheaders.o .libs/par2cmdline.o .libs/commandline.o .libs/crc.o .libs/creatorpacket.o .libs/criticalpacket.o .libs/datablock.o .libs/descriptionpacket.o .libs/diskfile.o .libs/filechecksummer.o .libs/galois.o .libs/mainpacket.o .libs/md5.o .libs/par1fileformat.o .libs/par1repairer.o .libs/par1repairersourcefile.o .libs/par2creator.o .libs/par2creatorsourcefile.o .libs/par2fileformat.o .libs/par2repairer.o .libs/par2repairersourcefile.o .libs/recoverypacket.o .libs/reedsolomon.o .libs/verificationhashtable.o .libs/verificationpacket.o -lsigc-2.0 -lstdc++ -L/usr/lib/gcc/aarch64-redhat-linux/14 -L/usr/lib/gcc/aarch64-redhat-linux/14/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/aarch64-redhat-linux/14/../../.. -lstdc++ -lm -lgcc_s -lc -lgcc_s /usr/lib/gcc/aarch64-redhat-linux/14/crtendS.o /usr/lib/gcc/aarch64-redhat-linux/14/../../../../lib64/crtn.o -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -O2 -flto=auto -g -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -mno-omit-leaf-frame-pointer -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,pack-relative-relocs -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -Wl,-soname -Wl,libpar2.so.0 -o .libs/libpar2.so.0.0.1 libtool: link: (cd ".libs" && rm -f "libpar2.so.0" && ln -s "libpar2.so.0.0.1" "libpar2.so.0") libtool: link: (cd ".libs" && rm -f "libpar2.so" && ln -s "libpar2.so.0.0.1" "libpar2.so") libtool: link: ( cd ".libs" && rm -f "libpar2.la" && ln -s "../libpar2.la" "libpar2.la" ) make[1]: Leaving directory '/builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2' + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.KJKedm + umask 022 + cd /builddir/build/BUILD/libpar2-0.2-build + '[' /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT ++ dirname /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT + mkdir -p /builddir/build/BUILD/libpar2-0.2-build + mkdir /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd libpar2-0.2 + rm -rf /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT + make install DESTDIR=/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT 'INSTALL=install -p' make[1]: Entering directory '/builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2' /usr/bin/mkdir -p '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64' /bin/sh ./libtool --mode=install install -p libpar2.la '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64' libtool: install: install -p .libs/libpar2.so.0.0.1 /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64/libpar2.so.0.0.1 libtool: install: (cd /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64 && { ln -s -f libpar2.so.0.0.1 libpar2.so.0 || { rm -f libpar2.so.0 && ln -s libpar2.so.0.0.1 libpar2.so.0; }; }) libtool: install: (cd /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64 && { ln -s -f libpar2.so.0.0.1 libpar2.so || { rm -f libpar2.so && ln -s libpar2.so.0.0.1 libpar2.so; }; }) libtool: install: install -p .libs/libpar2.lai /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64/libpar2.la libtool: warning: remember to run 'libtool --finish /usr/lib64' /usr/bin/mkdir -p '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64/libpar2/include' install -p -m 644 config.h '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/lib64/libpar2/include' /usr/bin/mkdir -p '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/include/libpar2' install -p -m 644 commandline.h config.h crc.h creatorpacket.h criticalpacket.h datablock.h descriptionpacket.h diskfile.h filechecksummer.h galois.h letype.h libpar2.h mainpacket.h md5.h par1fileformat.h par1repairer.h par1repairersourcefile.h par2cmdline.h par2creator.h par2creatorsourcefile.h par2fileformat.h par2repairer.h par2repairersourcefile.h parheaders.h recoverypacket.h reedsolomon.h verificationhashtable.h verificationpacket.h '/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/include/libpar2' make[1]: Leaving directory '/builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2' + find /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT -name '*.la' -exec rm -f '{}' ';' + /usr/bin/find-debuginfo -j12 --strict-build-id -m -i --build-id-seed 0.2-42.fc41 --unique-debug-suffix -0.2-42.fc41.aarch64 --unique-debug-src-base libpar2-0.2-42.fc41.aarch64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 50000000 -S debugsourcefiles.list /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2 find-debuginfo: starting Extracting debug info from 1 files DWARF-compressing 1 files sepdebugcrcfix: Updated 1 CRC32s, 0 CRC32s did match. Creating .debug symlinks for symlinks to ELF files Copying sources found by 'debugedit -l' to /usr/src/debug/libpar2-0.2-42.fc41.aarch64 find-debuginfo: done + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j12 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-determinism --brp -j12 /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT Scanned 14 directories and 86 files, processed 0 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors Reading /builddir/build/BUILD/libpar2-0.2-build/SPECPARTS/rpm-debuginfo.specpart Processing files: libpar2-0.2-42.fc41.aarch64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.RNUQQn + umask 022 + cd /builddir/build/BUILD/libpar2-0.2-build + cd libpar2-0.2 + DOCDIR=/builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + cp -pr /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/COPYING /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + cp -pr /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/README /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + cp -pr /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/ChangeLog /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + cp -pr /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/AUTHORS /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + cp -pr /builddir/build/BUILD/libpar2-0.2-build/libpar2-0.2/ROADMAP /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT/usr/share/doc/libpar2 + RPM_EC=0 ++ jobs -p + exit 0 Provides: libpar2 = 0.2-42.fc41 libpar2(aarch-64) = 0.2-42.fc41 libpar2.so.0()(64bit) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: ld-linux-aarch64.so.1()(64bit) ld-linux-aarch64.so.1(GLIBC_2.17)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_ABI_DT_RELR)(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) libsigc-2.0.so.0()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.8)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.15)(64bit) libstdc++.so.6(GLIBCXX_3.4.20)(64bit) libstdc++.so.6(GLIBCXX_3.4.30)(64bit) libstdc++.so.6(GLIBCXX_3.4.32)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) rtld(GNU_HASH) Processing files: libpar2-devel-0.2-42.fc41.aarch64 Provides: libpar2-devel = 0.2-42.fc41 libpar2-devel(aarch-64) = 0.2-42.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: libpar2.so.0()(64bit) Processing files: libpar2-debugsource-0.2-42.fc41.aarch64 Provides: libpar2-debugsource = 0.2-42.fc41 libpar2-debugsource(aarch-64) = 0.2-42.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: libpar2-debuginfo-0.2-42.fc41.aarch64 Provides: debuginfo(build-id) = 8c702249c81886806d0caf7eb0d04b456b5efe93 libpar2-debuginfo = 0.2-42.fc41 libpar2-debuginfo(aarch-64) = 0.2-42.fc41 libpar2.so.0.0.1-0.2-42.fc41.aarch64.debug()(64bit) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: libpar2-debugsource(aarch-64) = 0.2-42.fc41 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/libpar2-0.2-build/BUILDROOT Wrote: /builddir/build/RPMS/libpar2-devel-0.2-42.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/libpar2-0.2-42.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/libpar2-debugsource-0.2-42.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/libpar2-debuginfo-0.2-42.fc41.aarch64.rpm Child return code was: 0