See <http://build.squid-cache.org/job/trunk-x64-centos-6-clang/487/changes>
Changes: [Amos Jeffries] Bug 2907: high CPU usage on CONNECT when using delay pools When delay pools are active on a CONNECT tunnel and the pool is drained the I/O loop cycles very often transferring 1 byte until the pool is topped-up at the end of the second. Instead of looping constantly trying to read 1 byte at a time, add an asynchronous event to wait for a few I/O cycles or until more bytes can be read. To protect against infinite loops of waiting when many tunnels are competing for the pool allowance we only delay for a limited number of loops before allowing at least 1 byte through. Also, the amount of time waited is an odd fraction of 1 second so re-tries naturally spread across any given second fairly, with connections rotating closer or further from the time when pool topup happens. That behaviour still allows some variance in service times, but overall the CPU consumption and (as a result) total proxy speed appears to be much improved. NP: Initial production testing shows a 36% RPS speed increase, with a 50% reduction in total CPU usage. ------------------------------------------ [...truncated 3756 lines...] sed -e 's,[@]PERL[@],/usr/bin/perl,g' <../../../../helpers/basic_auth/DB/basic_db_auth.pl.in >basic_db_auth || (/bin/rm -f -f basic_db_auth ; exit 1) pod2man basic_db_auth basic_db_auth.8 make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/DB'> Making all in LDAP make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/LDAP'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_ldap_auth.o -MD -MP -MF .deps/basic_ldap_auth.Tpo -c -o basic_ldap_auth.o ../../../../helpers/basic_auth/LDAP/basic_ldap_auth.cc mv -f .deps/basic_ldap_auth.Tpo .deps/basic_ldap_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_ldap_auth basic_ldap_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lldap -llber libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_ldap_auth basic_ldap_auth.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lldap -llber make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/LDAP'> Making all in NCSA make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/NCSA'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/NCSA -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_ncsa_auth.o -MD -MP -MF .deps/basic_ncsa_auth.Tpo -c -o basic_ncsa_auth.o ../../../../helpers/basic_auth/NCSA/basic_ncsa_auth.cc ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/NCSA -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT crypt_md5.o -MD -MP -MF .deps/crypt_md5.Tpo -c -o crypt_md5.o ../../../../helpers/basic_auth/NCSA/crypt_md5.cc mv -f .deps/crypt_md5.Tpo .deps/crypt_md5.Po mv -f .deps/basic_ncsa_auth.Tpo .deps/basic_ncsa_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_ncsa_auth basic_ncsa_auth.o crypt_md5.o ../../../lib/libmisccontainers.la ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lnettle -lcrypt -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_ncsa_auth basic_ncsa_auth.o crypt_md5.o ../../../lib/.libs/libmisccontainers.a ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lnettle -lcrypt -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/NCSA'> Making all in NIS make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/NIS'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/NIS -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_nis_auth.o -MD -MP -MF .deps/basic_nis_auth.Tpo -c -o basic_nis_auth.o ../../../../helpers/basic_auth/NIS/basic_nis_auth.cc ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/NIS -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT nis_support.o -MD -MP -MF .deps/nis_support.Tpo -c -o nis_support.o ../../../../helpers/basic_auth/NIS/nis_support.cc mv -f .deps/basic_nis_auth.Tpo .deps/basic_nis_auth.Po mv -f .deps/nis_support.Tpo .deps/nis_support.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_nis_auth basic_nis_auth.o nis_support.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lcrypt -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_nis_auth basic_nis_auth.o nis_support.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lcrypt -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/NIS'> Making all in PAM make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/PAM'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_pam_auth.o -MD -MP -MF .deps/basic_pam_auth.Tpo -c -o basic_pam_auth.o ../../../../helpers/basic_auth/PAM/basic_pam_auth.cc mv -f .deps/basic_pam_auth.Tpo .deps/basic_pam_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_pam_auth basic_pam_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lpam -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_pam_auth basic_pam_auth.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lpam -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/PAM'> Making all in POP3 make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/POP3'> sed -e 's,[@]PERL[@],/usr/bin/perl,g' <../../../../helpers/basic_auth/POP3/basic_pop3_auth.pl.in >basic_pop3_auth || (/bin/rm -f -f basic_pop3_auth ; exit 1) pod2man basic_pop3_auth basic_pop3_auth.8 make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/POP3'> Making all in RADIUS make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/RADIUS'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/RADIUS -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_radius_auth.o -MD -MP -MF .deps/basic_radius_auth.Tpo -c -o basic_radius_auth.o ../../../../helpers/basic_auth/RADIUS/basic_radius_auth.cc ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/RADIUS -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT radius-util.o -MD -MP -MF .deps/radius-util.Tpo -c -o radius-util.o ../../../../helpers/basic_auth/RADIUS/radius-util.cc mv -f .deps/radius-util.Tpo .deps/radius-util.Po mv -f .deps/basic_radius_auth.Tpo .deps/basic_radius_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_radius_auth basic_radius_auth.o radius-util.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lnettle -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_radius_auth basic_radius_auth.o radius-util.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lnettle -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/RADIUS'> Making all in SASL make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SASL'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT basic_sasl_auth.o -MD -MP -MF .deps/basic_sasl_auth.Tpo -c -o basic_sasl_auth.o ../../../../helpers/basic_auth/SASL/basic_sasl_auth.cc mv -f .deps/basic_sasl_auth.Tpo .deps/basic_sasl_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_sasl_auth basic_sasl_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lsasl2 -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -g -o basic_sasl_auth basic_sasl_auth.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lsasl2 -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SASL'> Making all in SMB make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SMB'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -DHELPERSCRIPT=\"<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/libexec/basic_smb_auth.sh\"> -g -O2 -std=c++11 -MT basic_smb_auth-basic_smb_auth.o -MD -MP -MF .deps/basic_smb_auth-basic_smb_auth.Tpo -c -o basic_smb_auth-basic_smb_auth.o `test -f 'basic_smb_auth.cc' || echo '../../../../helpers/basic_auth/SMB/'`basic_smb_auth.cc clang: warning: argument unused during compilation: '-I ../../../..' clang: warning: argument unused during compilation: '-I ../../../../include' clang: warning: argument unused during compilation: '-I ../../../../lib' clang: warning: argument unused during compilation: '-I ../../../../src' clang: warning: argument unused during compilation: '-I ../../../include' mv -f .deps/basic_smb_auth-basic_smb_auth.Tpo .deps/basic_smb_auth-basic_smb_auth.Po /bin/sh ../../../libtool --tag=CXX --mode=link ccache clang++ -DHELPERSCRIPT=\"<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/libexec/basic_smb_auth.sh\"> -g -O2 -std=c++11 -g -o basic_smb_auth basic_smb_auth-basic_smb_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lm -lnsl -lresolv -lcap -lrt -ldl -ldl libtool: link: ccache clang++ -DHELPERSCRIPT=\"<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/libexec/basic_smb_auth.sh\"> -g -O2 -std=c++11 -g -o basic_smb_auth basic_smb_auth-basic_smb_auth.o ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lm -lnsl -lresolv -lcap -lrt -ldl make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SMB'> Making all in SMB_LM make[4]: Entering directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SMB_LM'> ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/SMB_LM -I../../../../lib -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT msntauth.o -MD -MP -MF .deps/msntauth.Tpo -c -o msntauth.o ../../../../helpers/basic_auth/SMB_LM/msntauth.cc ccache clang++ -DHAVE_CONFIG_H -I../../../.. -I../../../../include -I../../../../lib -I../../../../src -I../../../include -I../../../../helpers/basic_auth/SMB_LM -I../../../../lib -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT valid.o -MD -MP -MF .deps/valid.Tpo -c -o valid.o ../../../../helpers/basic_auth/SMB_LM/valid.cc mv -f .deps/valid.Tpo .deps/valid.Po In file included from ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:46: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/iostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ios:41: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/char_traits.h:41: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:66: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_pair.h:60: /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/move.h:57:14: error: rvalue reference to type 'typename std::remove_reference<domaincontroller &>::type' (aka 'domaincontroller') cannot bind to lvalue of type 'domaincontroller' { return __t; } ^~~ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/vector.tcc:302:12: note: in instantiation of function template specialization 'std::move<domaincontroller &>' requested here std::move(*(this->_M_impl._M_finish - 1))); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:741:4: note: in instantiation of function template specialization 'std::vector<domaincontroller, std::allocator<domaincontroller> >::_M_insert_aux<const domaincontroller &>' requested here _M_insert_aux(end(), __x); ^ ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:111:27: note: in instantiation of member function 'std::vector<domaincontroller, std::allocator<domaincontroller> >::push_back' requested here domaincontrollers.push_back(dc); ^ In file included from ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:46: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/iostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ios:43: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/ios_base.h:43: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/locale_classes.h:42: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/string:43: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/allocator.h:48: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/x86_64-redhat-linux/bits/c++allocator.h:34: /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ext/new_allocator.h:111:27: error: no matching function for call to 'forward' { ::new((void *)__p) _Tp(std::forward<_Args>(__args)...); } ^~~~~~~~~~~~~~~~~~~ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/vector.tcc:301:18: note: in instantiation of function template specialization '__gnu_cxx::new_allocator<domaincontroller>::construct<domaincontroller>' requested here this->_M_impl.construct(this->_M_impl._M_finish, ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:741:4: note: in instantiation of function template specialization 'std::vector<domaincontroller, std::allocator<domaincontroller> >::_M_insert_aux<const domaincontroller &>' requested here _M_insert_aux(end(), __x); ^ ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:111:27: note: in instantiation of member function 'std::vector<domaincontroller, std::allocator<domaincontroller> >::push_back' requested here domaincontrollers.push_back(dc); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/move.h:51:5: note: candidate function [with _Tp = domaincontroller] not viable: no known conversion from 'domaincontroller' to 'typename std::identity<domaincontroller>::type &&' (aka 'domaincontroller &&') for 1st argument forward(typename std::identity<_Tp>::type&& __t) ^ In file included from ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:46: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/iostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ios:41: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/char_traits.h:41: /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:561:20: error: no matching function for call to 'move' *--__result = std::move(*--__last); ^~~~~~~~~ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:593:45: note: in instantiation of function template specialization 'std::__copy_move_backward<true, false, std::random_access_iterator_tag>::__copy_move_b<domaincontroller *, domaincontroller *>' requested here _Category>::__copy_move_b(__first, ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:602:24: note: in instantiation of function template specialization 'std::__copy_move_backward_a<true, domaincontroller *, domaincontroller *>' requested here return _BI2(std::__copy_move_backward_a<_IsMove> ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:674:20: note: in instantiation of function template specialization 'std::__copy_move_backward_a2<true, domaincontroller *, domaincontroller *>' requested here return (std::__copy_move_backward_a2<true> ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/vector.tcc:308:9: note: in instantiation of function template specialization 'std::move_backward<domaincontroller *, domaincontroller *>' requested here std::move_backward(__position.base(), this->_M_impl._M_finish - 2, this->_M_impl._M_finish - 1); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:741:4: note: in instantiation of function template specialization 'std::vector<domaincontroller, std::allocator<domaincontroller> >::_M_insert_aux<const domaincontroller &>' requested here _M_insert_aux(end(), __x); ^ ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:111:27: note: in instantiation of member function 'std::vector<domaincontroller, std::allocator<domaincontroller> >::push_back' requested here domaincontrollers.push_back(dc); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/move.h:56:5: note: candidate template ignored: substitution failure [with _Tp = domaincontroller &] move(_Tp&& __t) ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:491:5: note: candidate function template not viable: requires 3 arguments, but 1 was provided move(_II __first, _II __last, _OI __result) ^ In file included from ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:46: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/iostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ostream:40: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ios:41: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/char_traits.h:41: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:69: /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_iterator.h:916:16: error: rvalue reference to type 'value_type' (aka 'domaincontroller') cannot bind to lvalue of type 'domaincontroller' { return *_M_current; } ^~~~~~~~~~~ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:74:28: note: in instantiation of member function 'std::move_iterator<domaincontroller *>::operator*' requested here std::_Construct(&*__cur, *__first); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:116:2: note: in instantiation of function template specialization 'std::__uninitialized_copy<false>::uninitialized_copy<std::move_iterator<domaincontroller *>, domaincontroller *>' requested here uninitialized_copy(__first, __last, __result); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:256:19: note: in instantiation of function template specialization 'std::uninitialized_copy<std::move_iterator<domaincontroller *>, domaincontroller *>' requested here { return std::uninitialized_copy(__first, __last, __result); } ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:264:19: note: in instantiation of function template specialization 'std::__uninitialized_copy_a<std::move_iterator<domaincontroller *>, domaincontroller *, domaincontroller>' requested here return std::__uninitialized_copy_a(std::make_move_iterator(__first), ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/vector.tcc:339:8: note: in instantiation of function template specialization 'std::__uninitialized_move_a<domaincontroller *, domaincontroller *, std::allocator<domaincontroller> >' requested here std::__uninitialized_move_a(this->_M_impl._M_start, ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:741:4: note: in instantiation of function template specialization 'std::vector<domaincontroller, std::allocator<domaincontroller> >::_M_insert_aux<const domaincontroller &>' requested here _M_insert_aux(end(), __x); ^ ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:111:27: note: in instantiation of member function 'std::vector<domaincontroller, std::allocator<domaincontroller> >::push_back' requested here domaincontrollers.push_back(dc); ^ In file included from ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:48: In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/vector:63: /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_construct.h:73:42: error: no matching function for call to 'forward' ::new(static_cast<void*>(__p)) _T1(std::forward<_T2>(__value)); ^~~~~~~~~~~~~~~~~ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:74:8: note: in instantiation of function template specialization 'std::_Construct<domaincontroller, domaincontroller>' requested here std::_Construct(&*__cur, *__first); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:116:2: note: in instantiation of function template specialization 'std::__uninitialized_copy<false>::uninitialized_copy<std::move_iterator<domaincontroller *>, domaincontroller *>' requested here uninitialized_copy(__first, __last, __result); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:256:19: note: in instantiation of function template specialization 'std::uninitialized_copy<std::move_iterator<domaincontroller *>, domaincontroller *>' requested here { return std::uninitialized_copy(__first, __last, __result); } ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_uninitialized.h:264:19: note: in instantiation of function template specialization 'std::__uninitialized_copy_a<std::move_iterator<domaincontroller *>, domaincontroller *, domaincontroller>' requested here return std::__uninitialized_copy_a(std::make_move_iterator(__first), ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/vector.tcc:339:8: note: in instantiation of function template specialization 'std::__uninitialized_move_a<domaincontroller *, domaincontroller *, std::allocator<domaincontroller> >' requested here std::__uninitialized_move_a(this->_M_impl._M_start, ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:741:4: note: in instantiation of function template specialization 'std::vector<domaincontroller, std::allocator<domaincontroller> >::_M_insert_aux<const domaincontroller &>' requested here _M_insert_aux(end(), __x); ^ ../../../../helpers/basic_auth/SMB_LM/msntauth.cc:111:27: note: in instantiation of member function 'std::vector<domaincontroller, std::allocator<domaincontroller> >::push_back' requested here domaincontrollers.push_back(dc); ^ /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/move.h:51:5: note: candidate function [with _Tp = domaincontroller] not viable: no known conversion from 'domaincontroller' to 'typename std::identity<domaincontroller>::type &&' (aka 'domaincontroller &&') for 1st argument forward(typename std::identity<_Tp>::type&& __t) ^ 5 errors generated. make[4]: *** [msntauth.o] Error 1 make[4]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth/SMB_LM'> make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers/basic_auth'> make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/helpers'> make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `<http://build.squid-cache.org/job/trunk-x64-centos-6-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build'> make: *** [distcheck] Error 1 buildtest.sh result is 2 BUILD: .././test-suite/buildtests/layer-00-default.opts configure: BUILD LIBRARIES: configure: BUILD EXTRA LIBRARIES: -lm -lnsl -lresolv -lcap -lrt -ldl -ldl configure: BUILD OBJECTS: configure: BUILD EXTRA OBJECTS: configure: BUILD C FLAGS: configure: BUILD EXTRA C FLAGS: -Werror -Qunused-arguments -D_REENTRANT configure: BUILD C++ FLAGS: -g -O2 -std=c++11 configure: BUILD EXTRA C++ FLAGS: -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT configure: BUILD Tools C++ FLAGS: -g -O2 -std=c++11 configure: BUILD LIBRARIES: configure: BUILD EXTRA LIBRARIES: -lm -lnsl -lresolv -lcap -lrt -ldl -ldl configure: BUILD OBJECTS: configure: BUILD EXTRA OBJECTS: configure: BUILD C FLAGS: configure: BUILD EXTRA C FLAGS: -Werror -Qunused-arguments -D_REENTRANT configure: BUILD C++ FLAGS: -g -O2 -std=c++11 configure: BUILD EXTRA C++ FLAGS: -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT configure: BUILD Tools C++ FLAGS: -g -O2 -std=c++11 /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/move.h:57:14: error: rvalue reference to type 'typename std::remove_reference<domaincontroller &>::type' (aka 'domaincontroller') cannot bind to lvalue of type 'domaincontroller' /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ext/new_allocator.h:111:27: error: no matching function for call to 'forward' /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algobase.h:561:20: error: no matching function for call to 'move' /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_iterator.h:916:16: error: rvalue reference to type 'value_type' (aka 'domaincontroller') cannot bind to lvalue of type 'domaincontroller' /usr/bin/../lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_construct.h:73:42: error: no matching function for call to 'forward' make[4]: *** [msntauth.o] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [distcheck] Error 1 Build FAILED. Build step 'Execute shell' marked build as failure _______________________________________________ squid-dev mailing list squid-dev@lists.squid-cache.org http://lists.squid-cache.org/listinfo/squid-dev