=> Bootstrap dependency digest>=20010302: found digest-20160304 WARNING: [license.mk] Every package should define a LICENSE. ===> Skipping vulnerability checks. WARNING: No /var/db/pkg/pkg-vulnerabilities file found. WARNING: To fix run: `/usr/sbin/pkg_admin -K /var/db/pkg fetch-pkg-vulnerabilities'. ===> Building for nget-0.27.1nb4 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o nget.o nget.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o status.o status.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o prot_nntp.o prot_nntp.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o decode.o decode.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o texthandler.o texthandler.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o sockpool.o sockpool.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o sockstuff.o sockstuff.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o cache.o cache.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o grouplist.o grouplist.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o dupe_file.o dupe_file.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o file.o file.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o file_gz.o file_gz.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o termstuff.o termstuff.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o path.o path.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o misc.o misc.cc clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o strtoker.o strtoker.cc In file included from sockstuff.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from texthandler.cc:20: In file included from ./texthandler.h:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from status.cc:19: In file included from ./status.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from file_gz.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from cache.cc:19: In file included from ./cache.h:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from dupe_file.cc:19: In file included from ./dupe_file.h:24: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from prot_nntp.cc:21: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from termstuff.cc:19: In file included from ./termstuff.h:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from nget.cc:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from sockpool.cc:19: In file included from ./sockpool.h:24: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from decode.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from file.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from strtoker.cc:20: In file included from ./strtoker.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from misc.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from grouplist.cc:19: In file included from ./grouplist.h:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o strreps.o strreps.cc In file included from strreps.cc:19: In file included from ./strreps.h:25: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o myregex.o myregex.cc In file included from myregex.cc:20: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o cfgfile.o cfgfile.cc file.cc:239:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (m_name.find(':')<0){//this isn't quite right with ipv6 addrs, but its only for error messages so who cares ;) ~~~~~~~~~~~~~~~~^~ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o argparser.o argparser.cc In file included from argparser.cc:19: In file included from ./argparser.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ In file included from cfgfile.cc:19: In file included from ./cfgfile.h:24: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. In file included from prot_nntp.cc:23: In file included from ./prot_nntp.h:26: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o etree.o etree.cc In file included from cache.cc:19: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ 2 warnings generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o nrange.o nrange.cc In file included from etree.cc:19: In file included from ./etree.h:24: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o log.o log.cc In file included from nrange.cc:19: In file included from ./nrange.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ misc.cc:189:23: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *text_month[13]={"Jan", "Feb", "Mar", "Apr", ^ misc.cc:189:30: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *text_month[13]={"Jan", "Feb", "Mar", "Apr", ^ misc.cc:189:37: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *text_month[13]={"Jan", "Feb", "Mar", "Apr", ^ misc.cc:189:44: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *text_month[13]={"Jan", "Feb", "Mar", "Apr", ^ misc.cc:190:2: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "May", "Jun", "Jul", "Aug", ^ misc.cc:190:9: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "May", "Jun", "Jul", "Aug", ^ misc.cc:190:16: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "May", "Jun", "Jul", "Aug", ^ misc.cc:190:23: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "May", "Jun", "Jul", "Aug", ^ misc.cc:191:2: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "Sep", "Oct", "Nov", "Dec" ^ misc.cc:191:9: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "Sep", "Oct", "Nov", "Dec" ^ misc.cc:191:16: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "Sep", "Oct", "Nov", "Dec" ^ misc.cc:191:23: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] "Sep", "Oct", "Nov", "Dec" ^ misc.cc:259:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="xrfc*-date"; ^ misc.cc:271:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="iso"; ^ misc.cc:288:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="asctime-date"; ^ misc.cc:298:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="ls-l-date"; ^ misc.cc:318:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="easy-date"; ^ misc.cc:343:7: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] tdt="time_t-date"; ^ clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o server.o server.cc In file included from log.cc:19: In file included from ./log.h:22: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par.o par.cc In file included from nget.cc:49: In file included from ./prot_nntp.h:26: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ In file included from texthandler.cc:20: In file included from ./texthandler.h:29: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ In file included from par.cc:19: In file included from ./par.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o knapsack.o knapsack.cc 19 warnings generated. grouplist.cc:333:14: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *sep=""; ^ grouplist.cc:336:9: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] sep=","; ^ grouplist.cc:342:15: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] char *sep=""; ^ grouplist.cc:345:10: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings] sep=","; ^ /usr/pkg/bin/gmake -C compat compat.a 1 warning generated. In file included from texthandler.cc:20: In file included from ./texthandler.h:29: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from texthandler.cc:20: In file included from ./texthandler.h:29: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ gmake[1]: Entering directory '/data/scratch/news/nget/work/nget-0.27.1/compat' clang -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o fake-getaddrinfo.o fake-getaddrinfo.c clang -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o fake-getnameinfo.o fake-getnameinfo.c ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ In file included from knapsack.cc:19: In file included from ./knapsack.h:23: In file included from ./config.h:365: ./_subconf.h:35:17: warning: using directive refers to implicitly-defined namespace 'std' using namespace std; ^ ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ In file included from etree.cc:20: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ In file included from prot_nntp.cc:23: In file included from ./prot_nntp.h:26: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from prot_nntp.cc:23: In file included from ./prot_nntp.h:26: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ /usr/pkg/bin/gmake -C par2 par2.a gmake[1]: Entering directory '/data/scratch/news/nget/work/nget-0.27.1/par2' clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o commandline.o commandline.cpp In file included from decode.cc:22: In file included from ./decode.h:29: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ In file included from cache.cc:19: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from cache.cc:19: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ rm -f compat.a ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ar r compat.a fake-getaddrinfo.o fake-getnameinfo.o 1 warning generated. ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ar: creating compat.a ranlib compat.a ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ In file included from nget.cc:49: In file included from ./prot_nntp.h:26: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memoryclang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o crc.o crc.cpp :3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from nget.cc:49: In file included from ./prot_nntp.h:26: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:270:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: gmake[1]: Leaving directory '/data/scratch/news/nget/work/nget-0.27.1/compat' error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o creatorpacket.o creatorpacket.cpp ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{./cache.h : ^248 :26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? ./cache.h: t_message_state_list::iterator i=states.find(mid.c_str());258 : ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h11:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{: ^ error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' ./cache.h: t_message_state_list::iterator i=states.find(mid.c_str());270: 40 ~~~~~~ ^: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:274:4: In file included from errordecode.cc: :use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'?22 : In file included from ./decode.h:29: ./cache.h: t_message_state_list::iterator i=states.find(mid.c_str());232 : ^~~~~~~~~~~~~~~~~~~~ 53 c_message_state :./cache.h: 224error:: 7reference to 'hash' is ambiguous: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from decode.cc:22: In file included from ./decode.h:29: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:270:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ 2 warnings and 20 errors generated. ./cache.h:270:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 2 warnings and 20 errors generated. : recipe for target 'texthandler.o' failed gmake: *** [texthandler.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o criticalpacket.o criticalpacket.cpp gmake: *** Waiting for unfinished jobs.... ./cache.h:270:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ 2 warnings and 20 errors generated. : recipe for target 'cache.o' failed gmake: *** [cache.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o datablock.o datablock.cpp 2 warnings and 20 errors generated. : recipe for target 'decode.o' failed gmake: *** [decode.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o descriptionpacket.o descriptionpacket.cpp ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ In file included from par.cc:19: In file included from ./par.h:28: In file included from ./cache.h:29: In file included from ./_hash_map.h:30: /usr/include/c++/ext/hash_map:213:5: warning: Use of the header is deprecated. Migrate to [-W#warnings] # warning Use of the header is deprecated. Migrate to ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] : recipe for target 'nget.o' failed gmake: *** [nget.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o diskfile.o diskfile.cpp 2 warnings and 20 errors generated. : recipe for target 'prot_nntp.o' failed gmake: *** [prot_nntp.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o filechecksummer.o filechecksummer.cpp 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o mainpacket.o mainpacket.cpp 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o md5.o md5.cpp 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par1fileformat.o par1fileformat.cpp 1 warning generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par1repairer.o par1repairer.cpp server.cc:131:54: warning: magnitude of floating-point constant too large for type 'float'; maximum is 3.40282347E+38 [-Wliteral-range] cfg->get("penaltymultiplier",penaltymultiplier,1.0f,1e100f); ^ In file included from commandline.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from etree.cc:20: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from etree.cc:20: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./cache.h:255:12: error: no member named 'erase' in 'c_message_state' states.erase(i); ~~~~~~ ^ ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:262:41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:270:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] In file included from creatorpacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 2 warnings and 20 errors generated. 7 warnings generated. : recipe for target 'etree.o' failed gmake: *** [etree.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par1repairersourcefile.o par1repairersourcefile.cpp clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par2fileformat.o par2fileformat.cpp In file included from par.cc:19: In file included from ./par.h:28: ./cache.h:232:53: error: reference to 'hash' is ambiguous typedef hash_map, eqstr> t_message_state_list; ^ /usr/include/c++/memory:3150:29: note: candidate found by name lookup is 'std::__1::hash' template struct hash; ^ /usr/include/c++/ext/__hash:22:54: note: candidate found by name lookup is '__gnu_cxx::hash' template struct _LIBCPP_TYPE_VIS_ONLY hash { }; ^ In file included from par.cc:19: In file included from ./par.h:28: ./cache.h:232:58: error: expected expression typedef hash_map, eqstr> t_message_state_list; ^ ./cache.h:232:70: error: expected unqualified-id typedef hash_map, eqstr> t_message_state_list; ^ In file included from crc.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) 7 warnings generated. ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) ./cache.h:246:3: error: unknown type name 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list states; ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:248:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par2repairer.o par2repairer.cpp In file included from datablock.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./cache.h:248:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:248:44: error: no member named 'find' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~ ^ ./cache.h:250:18: error: no member named 'end' in 'c_message_state' if (i!=states.end()){ ~~~~~~ ^ ./verificationhashtable.h./cache.h::186255:47:: 12warning:: '&&' within '||' [-Wlogical-op-parentheses] error: no member named 'erase' in 'c_message_state' if (entry->crc < crc || entry->crc == crc && entry->hash < hash) states.erase(i); ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ~~~~~~ ^ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./cache.h:258:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from descriptionpacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./cache.h:258:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./cache.h:258:40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./cache.h:262:15: error: no member named 'find' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ ./verificationhashtable.h:405:54:./cache.h :warning262: :'&&' within '||' [-Wlogical-op-parentheses]41: error: no member named 'end' in 'c_message_state' if (states.find(mid.c_str())!=states.end()) ~~~~~~ ^ checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./cache.h:270:11: error: no member named 'insert' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~ ^ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) ./cache.h:270:18: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ In file included from filechecksummer.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning ./cache.h return crc > r.crc || crc == r.crc && hash > r.hash;: ^270 : ( ) 40: error: no member named 'value_type' in 'c_message_state' states.insert(t_message_state_list::value_type(s->messageid.c_str(),s)); ~~~~~~~~~~~~~~~~~~~~~~^ ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) ./cache.h:274:4: error: use of undeclared identifier 't_message_state_list'; did you mean 'c_message_state'? t_message_state_list::iterator i=states.find(mid.c_str()); ^~~~~~~~~~~~~~~~~~~~ c_message_state ./cache.h:224:7: note: 'c_message_state' declared here class c_message_state : public c_refcounted{ ^ ./cache.h:274:26: error: no type named 'iterator' in 'c_message_state' t_message_state_list::iterator i=states.find(mid.c_str()); ~~~~~~~~~~~~~~~~~~~~~~^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 7 warnings generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o par2repairersourcefile.o par2repairersourcefile.cpp 7 warnings generated. 2 warnings and 20 errors generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o recoverypacket.o recoverypacket.cpp : recipe for target 'par.o' failed gmake: *** [par.o] Error 1 clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o verificationhashtable.o verificationhashtable.cpp In file included from diskfile.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from mainpacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. clang++ -O2 -I/usr/pkg/include -I/usr/include -Wall -MMD -MP -DHAVE_CONFIG_H -I/usr/pkg/include -I/usr/include -c -o verificationpacket.o verificationpacket.cpp 7 warnings generated. In file included from criticalpacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. In file included from md5.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. In file included from par1repairer.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) In file included from par2fileformat.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: ./verificationhashtable.hwarning: '&&' within '||' [-Wlogical-op-parentheses]: 73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:./verificationhashtable.h73:69::4040:: note: place parentheses around the '&&' expression to silence this warning note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:./verificationhashtable.h:47412:56:: warningnote: : place parentheses around the '&&' expression to silence this warning '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h./verificationhashtable.h::429186::49:47 :note: place parentheses around the '&&' expression to silence this warningnote : place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ( ) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from par1fileformat.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. In file included from par1repairersourcefile.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) par1repairer.cpp:236:87: warning: '&&' within '||' [-Wlogical-op-parentheses] (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~ par1repairer.cpp:236:87: note: place parentheses around the '&&' expression to silence this warning (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) ^ ( ) par1repairer.cpp:236:218: warning: '&&' within '||' [-Wlogical-op-parentheses] (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) ~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp:236:218: note: place parentheses around the '&&' expression to silence this warning (fileheader.datasize && (fileheader.filelistoffset <= fileheader.dataoffset && fileheader.dataoffset < fileheader.filelistoffset+fileheader.filelistsize || fileheader.dataoffset <= fileheader.filelistoffset && fileheader.filelistoffset < fileheader.dataoffset + fileheader.datasize))) ^ ( ) par1repairer.cpp:389:8: warning: unused variable 'success' [-Wunused-variable] bool success = diskfilemap.Insert(diskfile); ^ par1repairersourcefile.cpp:49:22: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand] filename += ch && 255; ^ ~~~ par1repairersourcefile.cpp:49:22: note: use '&' for a bitwise operation filename += ch && 255; ^~ & par1repairersourcefile.cpp:49:22: note: remove constant to silence this warning filename += ch && 255; ~^~~~~~ 5 warnings generated. 7 warnings generated. par1repairer.cpp:427:48: warning: '&&' within '||' [-Wlogical-op-parentheses] (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp:427:48: note: place parentheses around the '&&' expression to silence this warning (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ^ ( ) par1repairer.cpp:429:30: warning: '&&' within '||' [-Wlogical-op-parentheses] isdigit(tail[1]) && isdigit(tail[2]) ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ par1repairer.cpp:429:30: note: place parentheses around the '&&' expression to silence this warning isdigit(tail[1]) && isdigit(tail[2]) ^ ( ) par1repairer.cpp:458:48: warning: '&&' within '||' [-Wlogical-op-parentheses] (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp:458:48: note: place parentheses around the '&&' expression to silence this warning (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ^ ( ) par1repairer.cpp:460:30: warning: '&&' within '||' [-Wlogical-op-parentheses] isdigit(tail[1]) && isdigit(tail[2]) ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ par1repairer.cpp:460:30: note: place parentheses around the '&&' expression to silence this warning isdigit(tail[1]) && isdigit(tail[2]) ^ ( ) par1repairer.cpp:506:12: warning: unused variable 'success' [-Wunused-variable] bool success = diskfilemap.Insert(diskfile); ^ par1repairer.cpp:558:48: warning: '&&' within '||' [-Wlogical-op-parentheses] (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ par1repairer.cpp:558:48: note: place parentheses around the '&&' expression to silence this warning (tail[1] == 'A' || tail[1] == 'a') && (tail[2] == 'R' || tail[2] == 'r') ^ ( ) par1repairer.cpp:560:30: warning: '&&' within '||' [-Wlogical-op-parentheses] isdigit(tail[1]) && isdigit(tail[2]) ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ par1repairer.cpp:560:30: note: place parentheses around the '&&' expression to silence this warning isdigit(tail[1]) && isdigit(tail[2]) ^ ( ) 7 warnings generated. par1repairer.cpp:584:14: warning: unused variable 'success' [-Wunused-variable] bool success = diskfilemap.Insert(diskfile); ^ 8 warnings generated. 1 warning generated. In file included from par2repairer.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from par2repairersourcefile.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. In file included from recoverypacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) In file included from verificationhashtable.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) par2repairer.cpp:389:10: warning: unused variable 'success' [-Wunused-variable] bool success = diskFileMap.Insert(diskfile); ^ 7 warnings generated. par2repairer.cpp:1050:12: warning: unused variable 'success' [-Wunused-variable] bool success = diskFileMap.Insert(diskfile); ^ 7 warnings generated. par2repairer.cpp:1154:10: warning: unused variable 'success' [-Wunused-variable] bool success = diskFileMap.Insert(diskfile); ^ In file included from verificationpacket.cpp:20: In file included from ./par2cmdline.h:280: ./verificationhashtable.h:69:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc < r.crc || crc == r.crc && hash < r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:69:40: note: place parentheses around the '&&' expression to silence this warning return crc < r.crc || crc == r.crc && hash < r.hash; ^ ( ) ./verificationhashtable.h:73:40: warning: '&&' within '||' [-Wlogical-op-parentheses] return crc > r.crc || crc == r.crc && hash > r.hash; ~~ ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ ./verificationhashtable.h:73:40: note: place parentheses around the '&&' expression to silence this warning return crc > r.crc || crc == r.crc && hash > r.hash; ^ ( ) ./verificationhashtable.h:186:47: warning: '&&' within '||' [-Wlogical-op-parentheses] if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:186:47: note: place parentheses around the '&&' expression to silence this warning if (entry->crc < crc || entry->crc == crc && entry->hash < hash) ^ ( ) ./verificationhashtable.h:190:52: warning: '&&' within '||' [-Wlogical-op-parentheses] else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:190:52: note: place parentheses around the '&&' expression to silence this warning else if (entry->crc > crc || entry->crc == crc && entry->hash > hash) ^ ( ) ./verificationhashtable.h:405:54: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:405:54: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:412:56: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:412:56: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != currententry->GetDataBlock()->GetLength() ^ ( ) ./verificationhashtable.h:429:49: warning: '&&' within '||' [-Wlogical-op-parentheses] checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./verificationhashtable.h:429:49: note: place parentheses around the '&&' expression to silence this warning checksummer.ShortBlock() && checksummer.BlockLength() != nextentry->GetDataBlock()->GetLength() ^ ( ) 7 warnings generated. 7 warnings generated. 18 warnings generated. 10 warnings generated. rm -f par2.a ar r par2.a commandline.o crc.o creatorpacket.o criticalpacket.o datablock.o descriptionpacket.o diskfile.o filechecksummer.o mainpacket.o md5.o par1fileformat.o par1repairer.o par1repairersourcefile.o par2fileformat.o par2repairer.o par2repairersourcefile.o recoverypacket.o verificationhashtable.o verificationpacket.o ar: creating par2.a ranlib par2.a gmake[1]: Leaving directory '/data/scratch/news/nget/work/nget-0.27.1/par2' *** Error code 2 Stop. make[1]: stopped in /data/pkgsrc/news/nget *** Error code 1 Stop. make: stopped in /data/pkgsrc/news/nget