Closed simonlynen closed 10 years ago
======
Linux slynen 3.13.0-34-generic #60-Ubuntu SMP Wed Aug 13 15:45:27 UTC 2014 x86_64
Average over 10000000 iterations
Current time (GMT): Fri Aug 22 07:53:18 2014
SPARSE_HASH_MAP (4 byte objects, 10000000 iterations):
map_grow 147.3 ns (23421757 hashes, 53421815 copies)
map_predict/grow 59.8 ns (10000000 hashes, 40000005 copies)
map_replace 23.0 ns (33421757 hashes, 53421815 copies)
map_fetch_random 138.7 ns (33421757 hashes, 53421815 copies)
map_fetch_sequential 34.0 ns (33421757 hashes, 53421815 copies)
map_fetch_empty 12.3 ns ( 0 hashes, 1 copies)
map_remove 41.0 ns (33421757 hashes, 63421815 copies)
map_toggle 132.9 ns (20399999 hashes, 51599997 copies)
map_iterate 7.7 ns (23421757 hashes, 53421815 copies)
stresshashfunction map_size=256 stride=1: 239.3ns/insertion
stresshashfunction map_size=256 stride=256: 177.7ns/insertion
stresshashfunction map_size=1024 stride=1: 415.4ns/insertion
stresshashfunction map_size=1024 stride=1024: 436.4ns/insertion
DENSE_HASH_MAP (4 byte objects, 10000000 iterations):
map_grow 32.4 ns (26777220 hashes, 123886195 copies)
map_predict/grow 14.5 ns (10000000 hashes, 73554475 copies)
map_replace 6.6 ns (36777220 hashes, 123886195 copies)
map_fetch_random 21.0 ns (36777220 hashes, 123886195 copies)
map_fetch_sequential 4.7 ns (36777220 hashes, 123886195 copies)
map_fetch_empty 3.3 ns ( 0 hashes, 35 copies)
map_remove 7.8 ns (36777220 hashes, 133886195 copies)
map_toggle 38.4 ns (20624999 hashes, 74999995 copies)
map_iterate 4.2 ns (26777220 hashes, 123886195 copies)
stresshashfunction map_size=256 stride=1: 37.7ns/insertion
stresshashfunction map_size=256 stride=256: 18.8ns/insertion
stresshashfunction map_size=1024 stride=1: 61.6ns/insertion
stresshashfunction map_size=1024 stride=1024: 38.2ns/insertion
STANDARD HASH_MAP (4 byte objects, 10000000 iterations):
map_grow 65.2 ns (27427396 hashes, 40000000 copies)
map_predict/grow 37.6 ns (10000000 hashes, 40000000 copies)
map_replace 14.3 ns (37427396 hashes, 40000000 copies)
map_fetch_random 67.7 ns (37427396 hashes, 40000000 copies)
map_fetch_sequential 13.0 ns (37427396 hashes, 40000000 copies)
map_fetch_empty 11.3 ns (10000000 hashes, 0 copies)
map_remove 28.5 ns (37427396 hashes, 40000000 copies)
map_toggle 58.6 ns (20000000 hashes, 40000000 copies)
map_iterate 3.6 ns (27427396 hashes, 40000000 copies)
stresshashfunction map_size=256 stride=1: 40.5ns/insertion
stresshashfunction map_size=256 stride=256: 41.0ns/insertion
stresshashfunction map_size=1024 stride=1: 39.5ns/insertion
stresshashfunction map_size=1024 stride=1024: 40.0ns/insertion
STANDARD MAP (4 byte objects, 10000000 iterations):
map_grow 377.8 ns ( 0 hashes, 20000000 copies)
map_predict/grow 381.3 ns ( 0 hashes, 20000000 copies)
map_replace 212.7 ns ( 0 hashes, 20000000 copies)
map_fetch_random 1356.7 ns ( 0 hashes, 20000000 copies)
map_fetch_sequential 193.6 ns ( 0 hashes, 20000000 copies)
map_fetch_empty 3.1 ns ( 0 hashes, 0 copies)
map_remove 178.5 ns ( 0 hashes, 20000000 copies)
map_toggle 57.9 ns ( 0 hashes, 20000000 copies)
map_iterate 15.9 ns ( 0 hashes, 20000000 copies)
SPARSE_HASH_MAP (8 byte objects, 5000000 iterations):
map_grow 211.7 ns (11710870 hashes, 26710925 copies)
map_predict/grow 104.1 ns ( 5000000 hashes, 20000005 copies)
map_replace 27.0 ns (16710870 hashes, 26710925 copies)
map_fetch_random 134.1 ns (16710870 hashes, 26710925 copies)
map_fetch_sequential 37.0 ns (16710870 hashes, 26710925 copies)
map_fetch_empty 13.6 ns ( 0 hashes, 1 copies)
map_remove 46.2 ns (16710870 hashes, 31710925 copies)
map_toggle 157.5 ns (10199999 hashes, 25799997 copies)
map_iterate 7.0 ns (11710870 hashes, 26710925 copies)
stresshashfunction map_size=256 stride=1: 238.5ns/insertion
stresshashfunction map_size=256 stride=256: 169.1ns/insertion
stresshashfunction map_size=1024 stride=1: 406.0ns/insertion
stresshashfunction map_size=1024 stride=1024: 431.3ns/insertion
DENSE_HASH_MAP (8 byte objects, 5000000 iterations):
map_grow 49.9 ns (13388611 hashes, 61943147 copies)
map_predict/grow 17.4 ns ( 5000000 hashes, 36777259 copies)
map_replace 8.2 ns (18388611 hashes, 61943147 copies)
map_fetch_random 28.7 ns (18388611 hashes, 61943147 copies)
map_fetch_sequential 6.3 ns (18388611 hashes, 61943147 copies)
map_fetch_empty 5.2 ns ( 0 hashes, 35 copies)
map_remove 9.8 ns (18388611 hashes, 66943147 copies)
map_toggle 42.6 ns (10312499 hashes, 37499995 copies)
map_iterate 4.9 ns (13388611 hashes, 61943147 copies)
stresshashfunction map_size=256 stride=1: 39.1ns/insertion
stresshashfunction map_size=256 stride=256: 19.4ns/insertion
stresshashfunction map_size=1024 stride=1: 62.7ns/insertion
stresshashfunction map_size=1024 stride=1024: 38.6ns/insertion
STANDARD HASH_MAP (8 byte objects, 5000000 iterations):
map_grow 67.7 ns (13582537 hashes, 20000000 copies)
map_predict/grow 42.8 ns ( 5000000 hashes, 20000000 copies)
map_replace 13.7 ns (18582537 hashes, 20000000 copies)
map_fetch_random 74.5 ns (18582537 hashes, 20000000 copies)
map_fetch_sequential 14.8 ns (18582537 hashes, 20000000 copies)
map_fetch_empty 12.5 ns ( 5000000 hashes, 0 copies)
map_remove 30.2 ns (18582537 hashes, 20000000 copies)
map_toggle 64.9 ns (10000000 hashes, 20000000 copies)
map_iterate 3.2 ns (13582537 hashes, 20000000 copies)
stresshashfunction map_size=256 stride=1: 40.2ns/insertion
stresshashfunction map_size=256 stride=256: 41.3ns/insertion
stresshashfunction map_size=1024 stride=1: 40.3ns/insertion
stresshashfunction map_size=1024 stride=1024: 40.8ns/insertion
STANDARD MAP (8 byte objects, 5000000 iterations):
map_grow 424.0 ns ( 0 hashes, 10000000 copies)
map_predict/grow 397.7 ns ( 0 hashes, 10000000 copies)
map_replace 237.0 ns ( 0 hashes, 10000000 copies)
map_fetch_random 1286.0 ns ( 0 hashes, 10000000 copies)
map_fetch_sequential 255.6 ns ( 0 hashes, 10000000 copies)
map_fetch_empty 3.2 ns ( 0 hashes, 0 copies)
map_remove 198.3 ns ( 0 hashes, 10000000 copies)
map_toggle 57.2 ns ( 0 hashes, 10000000 copies)
map_iterate 17.3 ns ( 0 hashes, 10000000 copies)
SPARSE_HASH_MAP (16 byte objects, 2500000 iterations):
map_grow 290.9 ns ( 5855426 hashes, 13355478 copies)
map_predict/grow 154.6 ns ( 2500000 hashes, 10000005 copies)
map_replace 34.8 ns ( 8355426 hashes, 13355478 copies)
map_fetch_random 132.1 ns ( 8355426 hashes, 13355478 copies)
map_fetch_sequential 46.1 ns ( 8355426 hashes, 13355478 copies)
map_fetch_empty 14.0 ns ( 0 hashes, 1 copies)
map_remove 54.0 ns ( 8355426 hashes, 15855478 copies)
map_toggle 171.1 ns ( 5099999 hashes, 12899997 copies)
map_iterate 7.1 ns ( 5855426 hashes, 13355478 copies)
DENSE_HASH_MAP (16 byte objects, 2500000 iterations):
map_grow 97.0 ns ( 6694306 hashes, 30971619 copies)
map_predict/grow 35.7 ns ( 2500000 hashes, 18388651 copies)
map_replace 20.6 ns ( 9194306 hashes, 30971619 copies)
map_fetch_random 45.2 ns ( 9194306 hashes, 30971619 copies)
map_fetch_sequential 14.5 ns ( 9194306 hashes, 30971619 copies)
map_fetch_empty 5.7 ns ( 0 hashes, 35 copies)
map_remove 21.8 ns ( 9194306 hashes, 33471619 copies)
map_toggle 66.9 ns ( 5156249 hashes, 18749995 copies)
map_iterate 5.6 ns ( 6694306 hashes, 30971619 copies)
STANDARD HASH_MAP (16 byte objects, 2500000 iterations):
map_grow 92.1 ns ( 6726830 hashes, 10000000 copies)
map_predict/grow 57.5 ns ( 2500000 hashes, 10000000 copies)
map_replace 22.8 ns ( 9226830 hashes, 10000000 copies)
map_fetch_random 96.1 ns ( 9226830 hashes, 10000000 copies)
map_fetch_sequential 19.4 ns ( 9226830 hashes, 10000000 copies)
map_fetch_empty 17.6 ns ( 2500000 hashes, 0 copies)
map_remove 39.0 ns ( 9226830 hashes, 10000000 copies)
map_toggle 86.9 ns ( 5000000 hashes, 10000000 copies)
map_iterate 5.6 ns ( 6726830 hashes, 10000000 copies)
STANDARD MAP (16 byte objects, 2500000 iterations):
map_grow 319.0 ns ( 0 hashes, 5000000 copies)
map_predict/grow 291.8 ns ( 0 hashes, 5000000 copies)
map_replace 173.1 ns ( 0 hashes, 5000000 copies)
map_fetch_random 1113.2 ns ( 0 hashes, 5000000 copies)
map_fetch_sequential 235.9 ns ( 0 hashes, 5000000 copies)
map_fetch_empty 3.2 ns ( 0 hashes, 0 copies)
map_remove 191.9 ns ( 0 hashes, 5000000 copies)
map_toggle 60.0 ns ( 0 hashes, 5000000 copies)
map_iterate 27.0 ns ( 0 hashes, 5000000 copies)
SPARSE_HASH_MAP (256 byte objects, 312500 iterations):
map_grow 1507.0 ns ( 731912 hashes, 1669455 copies)
map_predict/grow 842.8 ns ( 312500 hashes, 1250005 copies)
map_replace 225.5 ns ( 1044412 hashes, 1669455 copies)
map_fetch_random 259.8 ns ( 1044412 hashes, 1669455 copies)
map_fetch_sequential 248.3 ns ( 1044412 hashes, 1669455 copies)
map_fetch_empty 28.3 ns ( 0 hashes, 1 copies)
map_remove 287.1 ns ( 1044412 hashes, 1981955 copies)
map_toggle 628.4 ns ( 637499 hashes, 1612497 copies)
map_iterate 17.2 ns ( 731912 hashes, 1669455 copies)
DENSE_HASH_MAP (256 byte objects, 312500 iterations):
map_grow 723.0 ns ( 836787 hashes, 3871515 copies)
map_predict/grow 296.9 ns ( 312500 hashes, 2298619 copies)
map_replace 210.0 ns ( 1149287 hashes, 3871515 copies)
map_fetch_random 211.3 ns ( 1149287 hashes, 3871515 copies)
map_fetch_sequential 201.9 ns ( 1149287 hashes, 3871515 copies)
map_fetch_empty 22.9 ns ( 0 hashes, 35 copies)
map_remove 233.9 ns ( 1149287 hashes, 4184015 copies)
map_toggle 440.5 ns ( 644531 hashes, 2343775 copies)
map_iterate 33.4 ns ( 836787 hashes, 3871515 copies)
STANDARD HASH_MAP (256 byte objects, 312500 iterations):
map_grow 572.5 ns ( 817789 hashes, 1250000 copies)
map_predict/grow 312.3 ns ( 312500 hashes, 1250000 copies)
map_replace 194.2 ns ( 1130289 hashes, 1250000 copies)
map_fetch_random 304.6 ns ( 1130289 hashes, 1250000 copies)
map_fetch_sequential 191.2 ns ( 1130289 hashes, 1250000 copies)
map_fetch_empty 148.8 ns ( 312500 hashes, 0 copies)
map_remove 221.5 ns ( 1130289 hashes, 1250000 copies)
map_toggle 493.3 ns ( 625000 hashes, 1250000 copies)
map_iterate 12.9 ns ( 817789 hashes, 1250000 copies)
STANDARD MAP (256 byte objects, 312500 iterations):
map_grow 291.7 ns ( 0 hashes, 625000 copies)
map_predict/grow 279.6 ns ( 0 hashes, 625000 copies)
map_replace 175.6 ns ( 0 hashes, 625000 copies)
map_fetch_random 682.0 ns ( 0 hashes, 625000 copies)
map_fetch_sequential 173.1 ns ( 0 hashes, 625000 copies)
map_fetch_empty 19.9 ns ( 0 hashes, 0 copies)
map_remove 159.9 ns ( 0 hashes, 625000 copies)
map_toggle 190.8 ns ( 0 hashes, 625000 copies)
map_iterate 42.8 ns ( 0 hashes, 625000 copies)
fails on osx unfortunately :(
In file included from ../sparsehash_src/src/hashtable_test.cc:60:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/vector:502:5: error: implicit instantiation of undefined template '__static_assert_test<false>'
static_assert((is_same<typename allocator_type::value_type, value_type>::value),
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/__config:490:35: note: expanded from macro 'static_assert'
typedef __static_assert_check<sizeof(__static_assert_test<(__b)>)> \
^
../sparsehash_src/src/sparsehash/sparsetable:1447:20: note: in instantiation of template class 'std::__1::vector<google::sparsegroup<std::__1::pair<const int, int>, 48, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >, <anonymous>::Alloc<google::sparsegroup<std::__1::pair<const int, int>, 48, <anonymous>::Alloc<std::__1::pair<const int, int>, unsigned long, 18446744073709551615> >, unsigned long, 18446744073709551615> >' requested here
typedef typename group_vector_type::reference GroupsReference;
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:168:20: note: in instantiation of template class 'google::sparsetable<std::__1::pair<const int, int>, 48, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >' requested here
typedef typename sparsetable<V,DEFAULT_GROUP_SIZE,A>::nonempty_iterator
^
../sparsehash_src/src/hash_test_interface.h:83:27: note: in instantiation of template class 'google::sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >' requested here
class iterator : public HT::iterator {
^
../sparsehash_src/src/hashtable_test.cc:592:32: note: in instantiation of member class 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator' requested here
typename TypeParam::iterator i;
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableIntTest_Typedefs' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/__config:486:24: note: template is declared here
template <bool> struct __static_assert_test;
^
../sparsehash_src/src/hashtable_test.cc:614:8: error: no viable conversion from 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator' to 'const google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::const_iterator'
ci = this->ht_.begin();
^~~~~~~~~~~~~~~~~
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableIntTest_Typedefs' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/hash_test_interface.h:106:5: note: candidate constructor
const_iterator(typename BaseHashtableInterface<HT>::iterator it)
^
../sparsehash_src/src/hash_test_interface.h:95:9: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator' to 'const google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::const_iterator &' for 1st argument
class const_iterator : public HT::const_iterator {
^
../sparsehash_src/src/hash_test_interface.h:95:9: note: passing argument to parameter here
../sparsehash_src/src/hashtable_test.cc:616:9: error: no viable conversion from 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::local_iterator' to 'const google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::const_local_iterator'
cli = this->ht_.begin(0);
^~~~~~~~~~~~~~~~~~
../sparsehash_src/src/hash_test_interface.h:136:5: note: candidate constructor
const_local_iterator(local_iterator it)
^
../sparsehash_src/src/hash_test_interface.h:127:9: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::local_iterator' to 'const google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::const_local_iterator &' for 1st argument
class const_local_iterator : public HT::const_local_iterator {
^
../sparsehash_src/src/hash_test_interface.h:127:9: note: passing argument to parameter here
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
In file included from ../sparsehash_src/src/hash_test_interface.h:50:
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:376:41: error: no matching constructor for initialization of 'iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >')
iterator begin() { return iterator(this, table.nonempty_begin(),
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sparsehash_src/src/sparsehash/sparse_hash_map:153:63: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::begin' requested here
iterator begin() { return rep.begin(); }
^
../sparsehash_src/src/hash_test_interface.h:144:25: note: in instantiation of member function 'google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::begin' requested here
return iterator(ht_.begin(), this);
^
../sparsehash_src/src/hashtable_test.cc:614:18: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::begin' requested here
ci = this->ht_.begin();
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableIntTest_Typedefs' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:179:3: note: candidate constructor not viable: no known conversion from 'nonempty_iterator' (aka 'two_d_iterator<std::vector<sparsegroup<value_type, 48, value_alloc_type>, vector_alloc> >') to 'st_iterator' (aka 'int') for 2nd argument
sparse_hashtable_iterator(const sparse_hashtable<V,K,HF,ExK,SetK,EqK,A> *h,
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:182:3: note: candidate constructor not viable: requires 0 arguments, but 3 were provided
sparse_hashtable_iterator() { } // not ever used internally
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:161:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
struct sparse_hashtable_iterator {
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
../sparsehash_src/src/hash_test_interface.h:88:15: error: type 'typename sparse_hash_map<int, int, Hasher, Hasher, Alloc<int, unsigned long, 18446744073709551615> >::iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >') is not a direct or virtual base of 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator'
: HT::iterator(it), parent_(parent) { }
^~~~~~~~
../sparsehash_src/src/hash_test_interface.h:144:12: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator::iterator' requested here
return iterator(ht_.begin(), this);
^
../sparsehash_src/src/hashtable_test.cc:614:18: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::begin' requested here
ci = this->ht_.begin();
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableIntTest_Typedefs' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
In file included from ../sparsehash_src/src/hash_test_interface.h:50:
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:394:14: error: no matching constructor for initialization of 'local_iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >')
return local_iterator(this, table.get_iter(i), table.nonempty_end());
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sparsehash_src/src/sparsehash/sparse_hash_map:159:63: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::begin' requested here
local_iterator begin(size_type i) { return rep.begin(i); }
^
../sparsehash_src/src/hash_test_interface.h:156:31: note: in instantiation of member function 'google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::begin' requested here
return local_iterator(ht_.begin(i), this);
^
../sparsehash_src/src/hashtable_test.cc:616:19: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::begin' requested here
cli = this->ht_.begin(0);
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:571:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableIntTest_Typedefs<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableIntTest_Typedefs' requested here
TYPED_TEST(HashtableIntTest, Typedefs) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:179:3: note: candidate constructor not viable: no known conversion from 'nonempty_iterator' (aka 'two_d_iterator<std::vector<sparsegroup<value_type, 48, value_alloc_type>, vector_alloc> >') to 'st_iterator' (aka 'int') for 2nd argument
sparse_hashtable_iterator(const sparse_hashtable<V,K,HF,ExK,SetK,EqK,A> *h,
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:182:3: note: candidate constructor not viable: requires 0 arguments, but 3 were provided
sparse_hashtable_iterator() { } // not ever used internally
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:161:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
struct sparse_hashtable_iterator {
^
../sparsehash_src/src/hashtable_test.cc:620:33: error: invalid operands to binary expression ('google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator' and 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator')
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/sparsehash/internal/libc_allocator_with_realloc.h:106:13: note: candidate template ignored: could not match 'libc_allocator_with_realloc<type-parameter-0-0>' against 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator'
inline bool operator==(const libc_allocator_with_realloc<T>&,
^
../sparsehash_src/src/hashtable_test.cc:624:20: error: invalid operands to binary expression ('typename HashtableInterface_SparseHashMap<int, int, Hasher, Hasher, Alloc<int, unsigned long, 18446744073709551615> >::iterator' and 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator')
EXPECT_TRUE(it != this->ht_.end());
~~ ^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/sparsehash/internal/libc_allocator_with_realloc.h:112:13: note: candidate template ignored: could not match 'libc_allocator_with_realloc<type-parameter-0-0>' against 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator'
inline bool operator!=(const libc_allocator_with_realloc<T>&,
^
../sparsehash_src/src/hashtable_test.cc:625:5: error: cannot increment value of type 'typename HashtableInterface_SparseHashMap<int, int, Hasher, Hasher, Alloc<int, unsigned long, 18446744073709551615> >::iterator'
++it;
^ ~~
../sparsehash_src/src/hashtable_test.cc:626:20: error: invalid operands to binary expression ('typename HashtableInterface_SparseHashMap<int, int, Hasher, Hasher, Alloc<int, unsigned long, 18446744073709551615> >::iterator' and 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator')
EXPECT_TRUE(it == this->ht_.end());
~~ ^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/sparsehash/internal/libc_allocator_with_realloc.h:106:13: note: candidate template ignored: could not match 'libc_allocator_with_realloc<type-parameter-0-0>' against 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator'
inline bool operator==(const libc_allocator_with_realloc<T>&,
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
../sparsehash_src/src/hash_test_interface.h:147:12: error: no matching constructor for initialization of 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::iterator'
return iterator(ht_.end(), this);
^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/hashtable_test.cc:620:46: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::end' requested here
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
^
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/hash_test_interface.h:85:5: note: candidate constructor not viable: requires 0 arguments, but 2 were provided
iterator() : parent_(NULL) { } // this allows code like "iterator it;"
^
../sparsehash_src/src/hash_test_interface.h:83:9: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class iterator : public HT::iterator {
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
In file included from ../sparsehash_src/src/hash_test_interface.h:50:
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:378:41: error: no matching constructor for initialization of 'iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >')
iterator end() { return iterator(this, table.nonempty_end(),
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sparsehash_src/src/sparsehash/sparse_hash_map:154:63: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::end' requested here
iterator end() { return rep.end(); }
^
../sparsehash_src/src/hash_test_interface.h:147:25: note: in instantiation of member function 'google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::end' requested here
return iterator(ht_.end(), this);
^
../sparsehash_src/src/hashtable_test.cc:620:46: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::end' requested here
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
^
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:179:3: note: candidate constructor not viable: no known conversion from 'nonempty_iterator' (aka 'two_d_iterator<std::vector<sparsegroup<value_type, 48, value_alloc_type>, vector_alloc> >') to 'st_iterator' (aka 'int') for 2nd argument
sparse_hashtable_iterator(const sparse_hashtable<V,K,HF,ExK,SetK,EqK,A> *h,
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:182:3: note: candidate constructor not viable: requires 0 arguments, but 3 were provided
sparse_hashtable_iterator() { } // not ever used internally
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:161:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
struct sparse_hashtable_iterator {
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:946:39: error: no matching constructor for initialization of 'iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >')
return std::pair<iterator,bool>(iterator(this, table.get_iter(pos.first),
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:979:12: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::insert_noresize' requested here
return insert_noresize(obj);
^
../sparsehash_src/src/sparsehash/sparse_hash_map:261:16: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const int, int>, int, <anonymous>::Hasher, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::insert' requested here
return rep.insert(obj);
^
../sparsehash_src/src/hash_test_interface.h:295:52: note: in instantiation of member function 'google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> >::insert' requested here
std::pair<typename HT::iterator, bool> r = ht_.insert(obj);
^
../sparsehash_src/src/hashtable_test.cc:621:13: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::insert' requested here
this->ht_.insert(this->UniqueObject(1));
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<int, int, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<int, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:181:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type1> t; \
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:179:3: note: candidate constructor not viable: no known conversion from 'nonempty_iterator' (aka 'two_d_iterator<std::vector<sparsegroup<value_type, 48, value_alloc_type>, vector_alloc> >') to 'st_iterator' (aka 'int') for 2nd argument
sparse_hashtable_iterator(const sparse_hashtable<V,K,HF,ExK,SetK,EqK,A> *h,
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:182:3: note: candidate constructor not viable: requires 0 arguments, but 3 were provided
sparse_hashtable_iterator() { } // not ever used internally
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:161:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
struct sparse_hashtable_iterator {
^
In file included from ../sparsehash_src/src/hashtable_test.cc:60:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/vector:502:5: error: implicit instantiation of undefined template '__static_assert_test<false>'
static_assert((is_same<typename allocator_type::value_type, value_type>::value),
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/__config:490:35: note: expanded from macro 'static_assert'
typedef __static_assert_check<sizeof(__static_assert_test<(__b)>)> \
^
../sparsehash_src/src/sparsehash/sparsetable:1447:20: note: in instantiation of template class 'std::__1::vector<google::sparsegroup<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, 48, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >, <anonymous>::Alloc<google::sparsegroup<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, 48, <anonymous>::Alloc<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, unsigned long, 18446744073709551615> >, unsigned long, 18446744073709551615> >' requested here
typedef typename group_vector_type::reference GroupsReference;
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:168:20: note: in instantiation of template class 'google::sparsetable<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, 48, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >' requested here
typedef typename sparsetable<V,DEFAULT_GROUP_SIZE,A>::nonempty_iterator
^
../sparsehash_src/src/hash_test_interface.h:83:27: note: in instantiation of template class 'google::sparse_hashtable_iterator<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, std::__1::basic_string<char>, <anonymous>::Hasher, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >' requested here
class iterator : public HT::iterator {
^
../sparsehash_src/src/hashtable_test.cc:620:25: note: in instantiation of member class 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator' requested here
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
^
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:205:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type7> t; \
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/__config:486:24: note: template is declared here
template <bool> struct __static_assert_test;
^
../sparsehash_src/src/hashtable_test.cc:624:20: error: invalid operands to binary expression ('typename HashtableInterface_SparseHashMap<basic_string<char>, basic_string<char>, Hasher, Hasher, Alloc<basic_string<char>, unsigned long, 18446744073709551615> >::iterator' and 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator')
EXPECT_TRUE(it != this->ht_.end());
~~ ^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:205:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type7> t; \
^
../sparsehash_src/src/sparsehash/internal/libc_allocator_with_realloc.h:112:13: note: candidate template ignored: could not match 'libc_allocator_with_realloc<type-parameter-0-0>' against 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator'
inline bool operator!=(const libc_allocator_with_realloc<T>&,
^
../sparsehash_src/src/hashtable_test.cc:625:5: error: cannot increment value of type 'typename HashtableInterface_SparseHashMap<basic_string<char>, basic_string<char>, Hasher, Hasher, Alloc<basic_string<char>, unsigned long, 18446744073709551615> >::iterator'
++it;
^ ~~
../sparsehash_src/src/hashtable_test.cc:626:20: error: invalid operands to binary expression ('typename HashtableInterface_SparseHashMap<basic_string<char>, basic_string<char>, Hasher, Hasher, Alloc<basic_string<char>, unsigned long, 18446744073709551615> >::iterator' and 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator')
EXPECT_TRUE(it == this->ht_.end());
~~ ^ ~~~~~~~~~~~~~~~
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/sparsehash/internal/libc_allocator_with_realloc.h:106:13: note: candidate template ignored: could not match 'libc_allocator_with_realloc<type-parameter-0-0>' against 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator'
inline bool operator==(const libc_allocator_with_realloc<T>&,
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
In file included from ../sparsehash_src/src/hash_test_interface.h:50:
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:376:41: error: no matching constructor for initialization of 'iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, std::__1::basic_string<char>, <anonymous>::Hasher, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >')
iterator begin() { return iterator(this, table.nonempty_begin(),
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sparsehash_src/src/sparsehash/sparse_hash_map:153:63: note: in instantiation of member function 'google::sparse_hashtable<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, std::__1::basic_string<char>, <anonymous>::Hasher, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::begin' requested here
iterator begin() { return rep.begin(); }
^
../sparsehash_src/src/hash_test_interface.h:144:25: note: in instantiation of member function 'google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::begin' requested here
return iterator(ht_.begin(), this);
^
../sparsehash_src/src/hashtable_test.cc:620:25: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::begin' requested here
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
^
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:205:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type7> t; \
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:179:3: note: candidate constructor not viable: no known conversion from 'nonempty_iterator' (aka 'two_d_iterator<std::vector<sparsegroup<value_type, 48, value_alloc_type>, vector_alloc> >') to 'st_iterator' (aka 'int') for 2nd argument
sparse_hashtable_iterator(const sparse_hashtable<V,K,HF,ExK,SetK,EqK,A> *h,
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:182:3: note: candidate constructor not viable: requires 0 arguments, but 3 were provided
sparse_hashtable_iterator() { } // not ever used internally
^
../sparsehash_src/src/sparsehash/internal/sparsehashtable.h:161:8: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 3 were provided
struct sparse_hashtable_iterator {
^
In file included from ../sparsehash_src/src/hashtable_test.cc:63:
../sparsehash_src/src/hash_test_interface.h:88:15: error: type 'typename sparse_hash_map<basic_string<char>, basic_string<char>, Hasher, Hasher, Alloc<basic_string<char>, unsigned long, 18446744073709551615> >::iterator' (aka 'sparse_hashtable_iterator<std::__1::pair<const std::__1::basic_string<char>, std::__1::basic_string<char> >, std::__1::basic_string<char>, <anonymous>::Hasher, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SelectKey, google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >::SetKey, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> >') is not a direct or virtual base of 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator'
: HT::iterator(it), parent_(parent) { }
^~~~~~~~
../sparsehash_src/src/hash_test_interface.h:144:12: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::iterator::iterator' requested here
return iterator(ht_.begin(), this);
^
../sparsehash_src/src/hashtable_test.cc:620:25: note: in instantiation of member function 'google::BaseHashtableInterface<google::sparse_hash_map<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::begin' requested here
EXPECT_TRUE(this->ht_.begin() == this->ht_.end());
^
../sparsehash_src/src/testutil.h:51:9: note: expanded from macro 'EXPECT_TRUE'
if (!(cond)) { \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::Run' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:171:7: note: expanded from macro 'TYPED_TEST'
Run(); \
^
../sparsehash_src/src/hashtable_test.cc:619:1: note: in instantiation of member function '<anonymous namespace>::TEST_onetype_HashtableAllTest_NormalIterators<google::HashtableInterface_SparseHashMap<std::__1::basic_string<char>, std::__1::basic_string<char>, <anonymous>::Hasher, <anonymous>::Hasher, <anonymous>::Alloc<std::__1::basic_string<char>, unsigned long, 18446744073709551615> > >::TEST_onetype_HashtableAllTest_NormalIterators' requested here
TYPED_TEST(HashtableAllTest, NormalIterators) {
^
../sparsehash_src/src/testutil.h:205:68: note: expanded from macro 'TYPED_TEST'
TEST_onetype_##superclass##_##testname<superclass##_type7> t; \
Isn't it the gtest outdated version problem that @furgalep is also experiencing?
@tcies Compare DENSE_HASH_MAP (from the sparse-hash package) with std::unordered_map (gcc 4.8, Intel i7)