<86>Apr 1 01:32:47 userdel[96069]: delete user 'rooter' <86>Apr 1 01:32:47 userdel[96069]: removed group 'rooter' owned by 'rooter' <86>Apr 1 01:32:47 userdel[96069]: removed shadow group 'rooter' owned by 'rooter' <86>Apr 1 01:32:47 groupadd[96105]: group added to /etc/group: name=rooter, GID=705 <86>Apr 1 01:32:47 groupadd[96105]: group added to /etc/gshadow: name=rooter <86>Apr 1 01:32:47 groupadd[96105]: new group: name=rooter, GID=705 <86>Apr 1 01:32:47 useradd[96147]: new user: name=rooter, UID=705, GID=705, home=/root, shell=/bin/bash <86>Apr 1 01:32:47 userdel[96209]: delete user 'builder' <86>Apr 1 01:32:47 userdel[96209]: removed group 'builder' owned by 'builder' <86>Apr 1 01:32:47 userdel[96209]: removed shadow group 'builder' owned by 'builder' <86>Apr 1 01:32:47 groupadd[96254]: group added to /etc/group: name=builder, GID=706 <86>Apr 1 01:32:47 groupadd[96254]: group added to /etc/gshadow: name=builder <86>Apr 1 01:32:47 groupadd[96254]: new group: name=builder, GID=706 <86>Apr 1 01:32:47 useradd[96276]: new user: name=builder, UID=706, GID=706, home=/usr/src, shell=/bin/bash <13>Apr 1 01:32:50 rpmi: libsigc++2-2.10.1-alt1.1 sisyphus+224161.100.1.1 1552112178 installed <13>Apr 1 01:32:50 rpmi: gcc-c++-common-1.4.23-alt1 sisyphus+221902.2500.4.1 1550596716 installed <13>Apr 1 01:32:50 rpmi: libstdc++8-devel-8.3.1-alt2 sisyphus+224979.100.1.1 1552540102 installed <13>Apr 1 01:32:51 rpmi: gcc8-c++-8.3.1-alt2 sisyphus+224979.100.1.1 1552540102 installed <13>Apr 1 01:32:51 rpmi: gcc-c++-8-alt1 sisyphus+222164.100.1.1 1550685957 installed <13>Apr 1 01:32:51 rpmi: libsigc++2-devel-2.10.1-alt1.1 sisyphus+224161.100.1.1 1552112178 installed Building target platforms: x86_64 Building for target x86_64 Wrote: /usr/src/in/nosrpm/libpar2-0.2-alt2_27.nosrc.rpm Installing libpar2-0.2-alt2_27.src.rpm Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.22818 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf libpar2-0.2 + echo 'Source #0 (libpar2-0.2.tar.gz):' Source #0 (libpar2-0.2.tar.gz): + /bin/gzip -dc /usr/src/RPM/SOURCES/libpar2-0.2.tar.gz + /bin/tar -xf - + cd libpar2-0.2 + /bin/chmod -c -Rf u+rwX,go-w . + echo 'Patch #0 (libpar2-0.2-cancel.patch):' Patch #0 (libpar2-0.2-cancel.patch): + /usr/bin/patch -p2 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). + echo 'Patch #1 (libpar2-0.2-bugfixes.patch):' Patch #1 (libpar2-0.2-bugfixes.patch): + /usr/bin/patch -p2 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 + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.22818 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd libpar2-0.2 + libtoolize libtoolize-default: putting auxiliary files in `.'. libtoolize-default: linking file `./ltmain.sh' libtoolize-default: You should add the contents of the following files to `aclocal.m4': libtoolize-default: `/usr/share/libtool-2.4/aclocal/libtool.m4' libtoolize-default: `/usr/share/libtool-2.4/aclocal/ltoptions.m4' libtoolize-default: `/usr/share/libtool-2.4/aclocal/ltversion.m4' libtoolize-default: `/usr/share/libtool-2.4/aclocal/ltsugar.m4' libtoolize-default: `/usr/share/libtool-2.4/aclocal/lt~obsolete.m4' libtoolize-default: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize-default: rerunning libtoolize-default, to keep the correct libtool macros in-tree. libtoolize-default: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. + autoreconf -i libtoolize-default: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize-default: rerunning libtoolize-default, to keep the correct libtool macros in-tree. libtoolize-default: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. configure.ac:30: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see: configure.ac:30: http://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='-pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC' + export CFLAGS + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC' + export CXXFLAGS + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC' + export FFLAGS + '[' -n '' ']' ++ printf %s '-pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC' ++ sed -r 's/(^|[[:space:]]+)-[^m][^[:space:]]*//g' + ASFLAGS= + export ASFLAGS + export lt_cv_deplibs_check_method=pass_all + lt_cv_deplibs_check_method=pass_all + sort -u + xargs -rn1 install -pm755 -- /usr/share/gnu-config/config.sub /usr/share/gnu-config/config.guess + xargs -ri dirname -- '{}' + xargs -ri find '{}' -type f '(' -name config.sub -or -name config.guess ')' -printf '%h/\n' + readlink -e -- ./configure + ./configure --build=x86_64-alt-linux --host=x86_64-alt-linux --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/lib --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --without-included-gettext --disable-static configure: WARNING: unrecognized options: --without-included-gettext checking build system type... x86_64-alt-linux-gnu checking host system type... x86_64-alt-linux-gnu checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes /usr/src/RPM/BUILD/libpar2-0.2/missing: Unknown `--is-lightweight' option Try `/usr/src/RPM/BUILD/libpar2-0.2/missing --help' for more information configure: WARNING: 'missing' script is too old or missing checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for x86_64-alt-linux-g++... x86_64-alt-linux-g++ 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 we are using the GNU C++ compiler... yes checking whether x86_64-alt-linux-g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of x86_64-alt-linux-g++... none checking how to print strings... printf checking for x86_64-alt-linux-gcc... x86_64-alt-linux-gcc checking whether we are using the GNU C compiler... yes checking whether x86_64-alt-linux-gcc accepts -g... yes checking for x86_64-alt-linux-gcc option to accept ISO C89... none needed checking whether x86_64-alt-linux-gcc understands -c and -o together... yes checking dependency style of x86_64-alt-linux-gcc... none checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by x86_64-alt-linux-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 whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-alt-linux-gnu file names to x86_64-alt-linux-gnu format... func_convert_file_noop checking how to convert x86_64-alt-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for x86_64-alt-linux-objdump... no checking for objdump... objdump checking how to recognize dependent libraries... (cached) pass_all checking for x86_64-alt-linux-dlltool... no checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for x86_64-alt-linux-ar... no checking for ar... ar checking for archiver @FILE support... @ checking for x86_64-alt-linux-strip... no checking for strip... strip checking for x86_64-alt-linux-ranlib... no checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from x86_64-alt-linux-gcc object... ok checking for sysroot... no checking for x86_64-alt-linux-mt... no checking for mt... no checking if : is a manifest tool... no checking how to run the C preprocessor... x86_64-alt-linux-gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if x86_64-alt-linux-gcc supports -fno-rtti -fno-exceptions... no checking for x86_64-alt-linux-gcc option to produce PIC... -fPIC -DPIC checking if x86_64-alt-linux-gcc PIC flag -fPIC -DPIC works... yes checking if x86_64-alt-linux-gcc static flag -static works... no checking if x86_64-alt-linux-gcc supports -c -o file.o... yes checking if x86_64-alt-linux-gcc supports -c -o file.o... (cached) yes checking whether the x86_64-alt-linux-gcc linker (/usr/bin/ld -m elf_x86_64) 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... x86_64-alt-linux-g++ -E checking for ld used by x86_64-alt-linux-g++... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the x86_64-alt-linux-g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for x86_64-alt-linux-g++ option to produce PIC... -fPIC -DPIC checking if x86_64-alt-linux-g++ PIC flag -fPIC -DPIC works... yes checking if x86_64-alt-linux-g++ static flag -static works... no checking if x86_64-alt-linux-g++ supports -c -o file.o... yes checking if x86_64-alt-linux-g++ supports -c -o file.o... (cached) yes checking whether the x86_64-alt-linux-g++ linker (/usr/bin/ld -m elf_x86_64) 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 stdbool.h that conforms to C99... no checking for _Bool... no checking for ANSI C header files... (cached) yes checking stdio.h usability... yes checking stdio.h presence... yes checking for stdio.h... yes checking endian.h usability... yes checking endian.h presence... yes checking for endian.h... yes checking getopt.h usability... yes checking getopt.h presence... yes checking for getopt.h... yes checking for x86_64-alt-linux-pkg-config... no checking for pkg-config... /usr/bin/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 special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for _LARGEFILE_SOURCE value needed for large files... no 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 configure: WARNING: unrecognized options: --without-included-gettext + make -j8 make all-am make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o parheaders.lo parheaders.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c parheaders.cpp -fPIC -DPIC -o .libs/parheaders.o make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o criticalpacket.lo criticalpacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c criticalpacket.cpp -fPIC -DPIC -o .libs/criticalpacket.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from criticalpacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from criticalpacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from criticalpacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ In file included from /usr/include/c++/8/cassert:44, from par2cmdline.h:249, from criticalpacket.cpp:20: criticalpacket.cpp: In member function 'bool CriticalPacket::WritePacket(DiskFile&, u64) const': criticalpacket.cpp:32:20: warning: the compiler can assume that the address of 'diskfile' will never be NULL [-Waddress] assert(&diskfile != 0 && packetdata != 0 && packetlength != 0); ~~~~~~~~~~^~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2cmdline.lo par2cmdline.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2cmdline.cpp -fPIC -DPIC -o .libs/par2cmdline.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2cmdline.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2cmdline.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2cmdline.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o crc.lo crc.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c crc.cpp -fPIC -DPIC -o .libs/crc.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from crc.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from crc.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from crc.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o datablock.lo datablock.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c datablock.cpp -fPIC -DPIC -o .libs/datablock.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from datablock.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from datablock.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from datablock.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o creatorpacket.lo creatorpacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c creatorpacket.cpp -fPIC -DPIC -o .libs/creatorpacket.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from creatorpacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from creatorpacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from creatorpacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o descriptionpacket.lo descriptionpacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c descriptionpacket.cpp -fPIC -DPIC -o .libs/descriptionpacket.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from descriptionpacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from descriptionpacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from descriptionpacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o libpar2.lo libpar2.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c libpar2.cpp -fPIC -DPIC -o .libs/libpar2.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from libpar2.h:5, from libpar2.cpp:1: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from libpar2.h:5, from libpar2.cpp:1: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from libpar2.h:5, from libpar2.cpp:1: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ libpar2.cpp: In member function 'Result LibPar2::PreProcess()': libpar2.cpp:57:10: warning: 'result' may be used uninitialized in this function [-Wmaybe-uninitialized] return result; ^~~~~~ libpar2.cpp: In member function 'Result LibPar2::Process(bool)': libpar2.cpp:77:10: warning: 'result' may be used uninitialized in this function [-Wmaybe-uninitialized] return result; ^~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o mainpacket.lo mainpacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c mainpacket.cpp -fPIC -DPIC -o .libs/mainpacket.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from mainpacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from mainpacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from mainpacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o galois.lo galois.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c galois.cpp -fPIC -DPIC -o .libs/galois.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from galois.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from galois.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from galois.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o commandline.lo commandline.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c commandline.cpp -fPIC -DPIC -o .libs/commandline.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from commandline.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from commandline.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from commandline.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o filechecksummer.lo filechecksummer.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c filechecksummer.cpp -fPIC -DPIC -o .libs/filechecksummer.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from filechecksummer.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from filechecksummer.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from filechecksummer.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par1fileformat.lo par1fileformat.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par1fileformat.cpp -fPIC -DPIC -o .libs/par1fileformat.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par1fileformat.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par1fileformat.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par1fileformat.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o md5.lo md5.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c md5.cpp -fPIC -DPIC -o .libs/md5.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from md5.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from md5.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from md5.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o diskfile.lo diskfile.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c diskfile.cpp -fPIC -DPIC -o .libs/diskfile.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from diskfile.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from diskfile.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from diskfile.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2creatorsourcefile.lo par2creatorsourcefile.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2creatorsourcefile.cpp -fPIC -DPIC -o .libs/par2creatorsourcefile.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2creatorsourcefile.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2creatorsourcefile.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2creatorsourcefile.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2fileformat.lo par2fileformat.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2fileformat.cpp -fPIC -DPIC -o .libs/par2fileformat.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2fileformat.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2fileformat.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2fileformat.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o recoverypacket.lo recoverypacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c recoverypacket.cpp -fPIC -DPIC -o .libs/recoverypacket.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from recoverypacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from recoverypacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from recoverypacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par1repairersourcefile.lo par1repairersourcefile.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par1repairersourcefile.cpp -fPIC -DPIC -o .libs/par1repairersourcefile.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par1repairersourcefile.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par1repairersourcefile.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par1repairersourcefile.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2repairersourcefile.lo par2repairersourcefile.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2repairersourcefile.cpp -fPIC -DPIC -o .libs/par2repairersourcefile.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2repairersourcefile.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2repairersourcefile.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2repairersourcefile.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o reedsolomon.lo reedsolomon.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c reedsolomon.cpp -fPIC -DPIC -o .libs/reedsolomon.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from reedsolomon.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from reedsolomon.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from reedsolomon.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o verificationpacket.lo verificationpacket.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c verificationpacket.cpp -fPIC -DPIC -o .libs/verificationpacket.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from verificationpacket.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from verificationpacket.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from verificationpacket.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o verificationhashtable.lo verificationhashtable.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c verificationhashtable.cpp -fPIC -DPIC -o .libs/verificationhashtable.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from verificationhashtable.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from verificationhashtable.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from verificationhashtable.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2creator.lo par2creator.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2creator.cpp -fPIC -DPIC -o .libs/par2creator.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2creator.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2creator.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2creator.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ In file included from par2cmdline.h:266, from par2creator.cpp:20: reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<16, 69643, short unsigned int>]': par2creator.cpp:863:29: required from here 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] memset(leftmatrix, 0, outcount * incount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par2creator.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here class Galois ^~~~~~ In file included from par2cmdline.h:266, from par2creator.cpp:20: 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] memset(rightmatrix, 0, outcount *outcount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par2creator.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here class Galois ^~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par1repairer.lo par1repairer.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par1repairer.cpp -fPIC -DPIC -o .libs/par1repairer.o 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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par1repairer.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par1repairer.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par1repairer.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::LoadRecoveryFile(std::__cxx11::string)': par1repairer.cpp:327:87: warning: suggest parentheses around '&&' within '||' [-Wparentheses] (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp: In member function 'bool Par1Repairer::LoadOtherRecoveryFiles(std::__cxx11::string)': par1repairer.cpp:521:48: warning: suggest parentheses around '&&' within '||' [-Wparentheses] (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] (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] (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:266, from par1repairer.cpp:20: reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<8, 285, unsigned char>]': par1repairer.cpp:1205:39: required from here 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] memset(leftmatrix, 0, outcount * incount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par1repairer.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here class Galois ^~~~~~ In file included from par2cmdline.h:266, from par1repairer.cpp:20: 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] memset(rightmatrix, 0, outcount *outcount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par1repairer.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<8, 285, unsigned char>'} declared here class Galois ^~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=compile x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. `pkg-config sigc++-2.0 --cflags` -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c -o par2repairer.lo par2repairer.cpp libtool: compile: x86_64-alt-linux-g++ -DHAVE_CONFIG_H -I. -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -c par2repairer.cpp -fPIC -DPIC -o .libs/par2repairer.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' 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' 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' MD5Hash hash; ^~~~ par2fileformat.h:84:25: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEVERIFICATIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:86:25: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEVERIFICATIONPACKET::fileid' MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name ^~~~~~ par2fileformat.h:87:33: warning: ignoring packed attribute because of unpacked non-POD field 'FILEVERIFICATIONENTRY FILEVERIFICATIONPACKET::entries []' FILEVERIFICATIONENTRY entries[]; ^ par2fileformat.h:99:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER FILEDESCRIPTIONPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:101:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::fileid' MD5Hash fileid; // MD5hash of [hash16k, length, name] ^~~~~~ par2fileformat.h:102:20: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash FILEDESCRIPTIONPACKET::hashfull' 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' 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' PACKET_HEADER header; ^~~~~~ par2fileformat.h:131:28: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash MAINPACKET::fileid [0]' MD5Hash fileid[0]; ^ par2fileformat.h:141:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER CREATORPACKET::header' PACKET_HEADER header; ^~~~~~ par2fileformat.h:151:20: warning: ignoring packed attribute because of unpacked non-POD field 'PACKET_HEADER RECOVERYBLOCKPACKET::header' PACKET_HEADER header; ^~~~~~ In file included from par2cmdline.h:283, from par2repairer.cpp:20: verificationhashtable.h: In member function 'bool VerificationHashEntry::operator<(const VerificationHashEntry&) const': verificationhashtable.h:69:40: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] 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] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:190:52: warning: suggest parentheses around '&&' within '||' [-Wparentheses] 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] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ verificationhashtable.h:412:56: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:283, from par2repairer.cpp:20: verificationhashtable.h:429:49: warning: suggest parentheses around '&&' within '||' [-Wparentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:288, from par2repairer.cpp:20: par1fileformat.h: At global scope: par1fileformat.h:41:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::controlhash' MD5Hash controlhash; ^~~~~~~~~~~ par1fileformat.h:42:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEHEADER::sethash' MD5Hash sethash; ^~~~~~~ par1fileformat.h:56:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hashfull' MD5Hash hashfull; ^~~~~~~~ par1fileformat.h:57:15: warning: ignoring packed attribute because of unpacked non-POD field 'MD5Hash PAR1FILEENTRY::hash16k' MD5Hash hash16k; ^~~~~~~ par2repairer.cpp: In member function 'bool Par2Repairer::LoadPacketsFromFile(std::__cxx11::string)': par2repairer.cpp:455:52: 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] memcpy(&header, current, sizeof(header)); ^ In file included from par2cmdline.h:264, from par2repairer.cpp:20: par2fileformat.h:62:8: note: 'struct PACKET_HEADER' declared here struct PACKET_HEADER ^~~~~~~~~~~~~ In file included from par2cmdline.h:266, from par2repairer.cpp:20: reedsolomon.h: In instantiation of 'bool ReedSolomon::Compute(CommandLine::NoiseLevel) [with g = Galois<16, 69643, short unsigned int>]': par2repairer.cpp:2233:39: required from here 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] memset(leftmatrix, 0, outcount * incount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par2repairer.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here class Galois ^~~~~~ In file included from par2cmdline.h:266, from par2repairer.cpp:20: 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] memset(rightmatrix, 0, outcount *outcount * sizeof(G)); ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from par2cmdline.h:261, from par2repairer.cpp:20: galois.h:57:7: note: 'ReedSolomon >::G' {aka 'class Galois<16, 69643, short unsigned int>'} declared here class Galois ^~~~~~ make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/sh ./libtool --tag=CXX --mode=link x86_64-alt-linux-g++ -Wall -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -version-info 0:1:0 -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: x86_64-alt-linux-g++ -fPIC -DPIC -shared -nostdlib /usr/lib64/gcc/x86_64-alt-linux/8/../../../../lib64/crti.o /usr/lib64/gcc/x86_64-alt-linux/8/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 -L/usr/lib64/gcc/x86_64-alt-linux/8 -L/usr/lib64/gcc/x86_64-alt-linux/8/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib64/gcc/x86_64-alt-linux/8/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib64/gcc/x86_64-alt-linux/8/crtendS.o /usr/lib64/gcc/x86_64-alt-linux/8/../../../../lib64/crtn.o -O2 -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 '/usr/src/RPM/BUILD/libpar2-0.2' + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.11088 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/libpar2-buildroot + : + /bin/rm -rf -- /usr/src/tmp/libpar2-buildroot + cd libpar2-0.2 + make install DESTDIR=/usr/src/tmp/libpar2-buildroot 'INSTALL=install -p' make: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' make[1]: Entering directory '/usr/src/RPM/BUILD/libpar2-0.2' /bin/mkdir -p '/usr/src/tmp/libpar2-buildroot/usr/lib64' /bin/sh ./libtool --mode=install install -p libpar2.la '/usr/src/tmp/libpar2-buildroot/usr/lib64' libtool: install: install -p .libs/libpar2.so.0.0.1 /usr/src/tmp/libpar2-buildroot/usr/lib64/libpar2.so.0.0.1 libtool: install: (cd /usr/src/tmp/libpar2-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 /usr/src/tmp/libpar2-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 /usr/src/tmp/libpar2-buildroot/usr/lib64/libpar2.la libtool: install: warning: remember to run `libtool --finish /usr/lib64' /bin/mkdir -p '/usr/src/tmp/libpar2-buildroot/usr/lib64/libpar2/include' install -p -m 644 config.h '/usr/src/tmp/libpar2-buildroot/usr/lib64/libpar2/include' /bin/mkdir -p '/usr/src/tmp/libpar2-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 '/usr/src/tmp/libpar2-buildroot/usr/include/libpar2' make[1]: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' make: Leaving directory '/usr/src/RPM/BUILD/libpar2-0.2' + find /usr/src/tmp/libpar2-buildroot -name '*.la' -exec rm -f '{}' ';' + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/libpar2-buildroot (auto) mode of './usr/lib64/libpar2.so.0.0.1' changed from 0755 (rwxr-xr-x) to 0644 (rw-r--r--) Verifying and fixing files in /usr/src/tmp/libpar2-buildroot (binconfig,pkgconfig,libtool,desktop) Checking contents of files in /usr/src/tmp/libpar2-buildroot/ (default) Compressing files in /usr/src/tmp/libpar2-buildroot (auto) Adjusting library links in /usr/src/tmp/libpar2-buildroot ./usr/lib64: libpar2.so.0 -> libpar2.so.0.0.1 Verifying ELF objects in /usr/src/tmp/libpar2-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: libpar2-0.2-alt2_27 Executing(%doc): /bin/sh -e /usr/src/tmp/rpm-tmp.41709 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd libpar2-0.2 + DOCDIR=/usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + export DOCDIR + rm -rf /usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + /bin/mkdir -p /usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + cp -prL COPYING README ChangeLog AUTHORS ROADMAP /usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + chmod -R go-w /usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + chmod -R a+rX /usr/src/tmp/libpar2-buildroot/usr/share/doc/libpar2-0.2 + exit 0 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.C94PKE find-provides: running scripts (debuginfo,lib,pam,perl,pkgconfig,python,shell) lib.prov: /usr/src/tmp/libpar2-buildroot/usr/lib64/libpar2.so.0: 298 symbols, 19 bpp Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.14rZhA find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,rpmlib,shebang,shell,static,symlinks) Provides: libpar2.so.0()(64bit) = set:md8mAtWgSgusELpDFURpnc2JiFAvAS6KhRRmr13KzNzrBj5hVZCsxLzkybn4bwHwfPyBP8kSeVxBDSrgwdjMtrUHRjnEBg2mU6YPmcjGE9llvFafdHEEcBIzigx0Coshi5wHrZHxbKhXkFF8xZu69Z273yyuuZnZC3k4yZvyoCEL0Ck05gBfL8AZ1X5PBFe4fvRwJ5I9Z5U90p1sugrKicDbpJf9oAaeCF8vOOGlnWmrWpqCUj2HJ7RV0eKG0A5EG36zyfZySlO4v30guCLYDOqhF21Zd1QeIMElNHZcKSTHQme8VWgUavSF58hZGWb8ubMYAQwy9CBepJrQMoZHteT77xNHXrNDp9ZvCeXELlBIs0GHD4ZzvAMWZcmYu3VCyT0Ziaj2JbQJAT79L0IetXExJZC1aowAwYbeDW3ObYIuvYobwC097uqyHoYPM5vhqregXyscIgSHWJf7ApYlqhJhiHgN3nWg3SkwCO5g2JMWz9vEPV0GIgPA37ygZFeiZtkp0yt6OaFm4D6X50Bkmuc0teOKERygNEsRAwpIMZlowEIyqQZ0j2M0A4amwtDWHzN0yod8GL0tMWy9XRhh8cgcumzZgpKLsj9gscH6SHv3 Requires: libc.so.6(GLIBC_2.14)(64bit), libc.so.6(GLIBC_2.2.5)(64bit), libc.so.6(GLIBC_2.3.4)(64bit), libc.so.6(GLIBC_2.4)(64bit), libgcc_s.so.1(GCC_3.0)(64bit), libsigc-2.0.so.0()(64bit) >= set:kglb3FDOTiQaZ1gFwRDtjCSanre1, 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.21)(64bit), libstdc++.so.6(GLIBCXX_3.4.9)(64bit), rtld(GNU_HASH), rtld(GNU_UNIQUE) Requires(rpmlib): rpmlib(SetVersions) Finding debuginfo files (using /usr/lib/rpm/find-debuginfo-files) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.ScwSjz Creating libpar2-debuginfo package Processing files: libpar2-devel-0.2-alt2_27 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.jxRJSB find-provides: running scripts (debuginfo,lib,pam,perl,pkgconfig,python,shell) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.gYLHQH find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,rpmlib,shebang,shell,static,symlinks) /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/libpar2.h:4:10: fatal error: sigc++/sigc++.h: No such file or directory #include ^~~~~~~~~~~~~~~~~ compilation terminated. cpp.req: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/libpar2.h: cpp failed, trying c++ mode /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/libpar2.h:4:10: fatal error: sigc++/sigc++.h: No such file or directory #include ^~~~~~~~~~~~~~~~~ compilation terminated. cpp.req: WARNING: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/libpar2.h: cpp failed /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/parheaders.h:2:10: fatal error: iostream: No such file or directory #include ^~~~~~~~~~ compilation terminated. cpp.req: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/parheaders.h: cpp failed, trying c++ mode In file included from /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/par2cmdline.h:286: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/par2repairer.h:23:10: fatal error: sigc++/sigc++.h: No such file or directory #include ^~~~~~~~~~~~~~~~~ compilation terminated. cpp.req: WARNING: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/par2cmdline.h: cpp failed /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/par2repairer.h:23:10: fatal error: sigc++/sigc++.h: No such file or directory #include ^~~~~~~~~~~~~~~~~ compilation terminated. cpp.req: WARNING: /usr/src/tmp/libpar2-buildroot/usr/include/libpar2/par2repairer.h: cpp failed Requires: libpar2 = 0.2-alt2_27, /usr/lib64/libpar2.so.0.0.1 Finding debuginfo files (using /usr/lib/rpm/find-debuginfo-files) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.XQGn3T Processing files: libpar2-debuginfo-0.2-alt2_27 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.Gk2gTa find-provides: running scripts (debuginfo) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.JqArlw find-requires: running scripts (debuginfo) Provides: debug64(libpar2.so.0) Requires: libpar2 = 0.2-alt2_27, debug64(libc.so.6), debug64(libgcc_s.so.1), debug64(libsigc-2.0.so.0), debug64(libstdc++.so.6) Removing 1 extra deps from libpar2-devel due to dependency on libpar2 Wrote: /usr/src/RPM/RPMS/x86_64/libpar2-0.2-alt2_27.x86_64.rpm Wrote: /usr/src/RPM/RPMS/x86_64/libpar2-devel-0.2-alt2_27.x86_64.rpm Wrote: /usr/src/RPM/RPMS/x86_64/libpar2-debuginfo-0.2-alt2_27.x86_64.rpm 40.97user 5.62system 0:35.06elapsed 132%CPU (0avgtext+0avgdata 237548maxresident)k 0inputs+0outputs (0major+2204414minor)pagefaults 0swaps 45.57user 7.96system 0:42.85elapsed 124%CPU (0avgtext+0avgdata 237548maxresident)k 0inputs+0outputs (0major+2520310minor)pagefaults 0swaps --- libpar2-0.2-alt2_27.x86_64.rpm.repo 2017-09-29 07:24:20.000000000 +0000 +++ libpar2-0.2-alt2_27.x86_64.rpm.hasher 2019-04-01 01:33:29.102426162 +0000 @@ -27,3 +27,3 @@ Requires: rpmlib(PayloadIsLzma) -Provides: libpar2.so.0()(64bit) = set:md8mAay9t8r8feQTIPkYWIb6AI8ZEQSMdGKSqbcW3v7z7TaDayOZJU2v7F4nK8m0n1vC5bDhEItO3bfJTw0rCwXSMnHDKgbxMla3M7qNcFyCklZ5GOjPaaaj9X8l0jI5E6qG0stXv3nszSFijh2ZddiWBz1hhffZHvrwygQZB4P4Z50jaw2EODn4OZkZg32PBFe4fvRwJ5I9Z5U90p1sugrKicDzUiM8lscjhZkmmJWiTqjfjP4vioJZ8WswGGVwa0p1GWwNEUPLU2kGA9Zm00OPYBZApJEkxwZu0q7USOHZcKSTHQme8VWgUavi73ZbGLwUJDD6kcNIQ9Htz66XvXsKfe2znTTyfPiYvjDtQTGime0RRjyZFfioZepbuLxsjNr0vhpiEtxKBYZoAn0mDKtQMSvbg13A4AvxNGY2fHT7fS2E9gOxDCUa6ZIM5vhqregXyscIgSHWJf7ApYlqhJhiHgN3nWg3SkwCO5g2d5QlZ1jZgte7gB5qCsUg4WftAYrGc0Ne3pBkbyjzZ20MX0FPIbqJ8kcand9o6bIvx1yOaGhT3j2M0A4amwtDWHzN02w0Y2Q1HbCIn75xM0NUpdW3pKLsj9gscH6SHv3 +Provides: libpar2.so.0()(64bit) = set:md8mAtWgSgusELpDFURpnc2JiFAvAS6KhRRmr13KzNzrBj5hVZCsxLzkybn4bwHwfPyBP8kSeVxBDSrgwdjMtrUHRjnEBg2mU6YPmcjGE9llvFafdHEEcBIzigx0Coshi5wHrZHxbKhXkFF8xZu69Z273yyuuZnZC3k4yZvyoCEL0Ck05gBfL8AZ1X5PBFe4fvRwJ5I9Z5U90p1sugrKicDbpJf9oAaeCF8vOOGlnWmrWpqCUj2HJ7RV0eKG0A5EG36zyfZySlO4v30guCLYDOqhF21Zd1QeIMElNHZcKSTHQme8VWgUavSF58hZGWb8ubMYAQwy9CBepJrQMoZHteT77xNHXrNDp9ZvCeXELlBIs0GHD4ZzvAMWZcmYu3VCyT0Ziaj2JbQJAT79L0IetXExJZC1aowAwYbeDW3ObYIuvYobwC097uqyHoYPM5vhqregXyscIgSHWJf7ApYlqhJhiHgN3nWg3SkwCO5g2JMWz9vEPV0GIgPA37ygZFeiZtkp0yt6OaFm4D6X50Bkmuc0teOKERygNEsRAwpIMZlowEIyqQZ0j2M0A4amwtDWHzN0yod8GL0tMWy9XRhh8cgcumzZgpKLsj9gscH6SHv3 Provides: libpar2 = 0.2-alt2_27