Your message dated Sat, 15 Aug 2026 14:51:13 +0000
with message-id <[email protected]>
and subject line Bug#1143707: fixed in sparsehash 2.0.4-2
has caused the Debian Bug report #1143707,
regarding sparsehash: FTBFS: ./src/sparsehash/sparsetable:1365:53: error: no 
class template named 'rebind' in 'class std::allocator<int>'
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1143707: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1143707
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:sparsehash
Version: 2.0.4-1
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202608/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:sparsehash, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean
   dh_clean
        rm -f debian/debhelper-build-stamp
        rm -rf debian/.debhelper/
        rm -f -- debian/libsparsehash-dev.substvars debian/files
        rm -fr -- debian/libsparsehash-dev/ debian/tmp/
        find .  \( \( \
                \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path 
.\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o 
-type f -a \
                \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
                 -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
                 -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
                 -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
                \) -exec rm -f {} + \) -o \
                \( -type d -a \( -name autom4te.cache -o -name __pycache__ \) 
-prune -exec rm -rf {} + \) \)
 debian/rules binary
dh binary
   dh_update_autotools_config
        cp -a --update=none --reflink=auto config.guess 
debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp
        mv 
debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6.tmp
 
debian/.debhelper/bucket/files/8f68846583131812ef4028fe1e0ed192a3a0ba13abca09afbe42c6b9d8abd9f6
        cp -f /usr/share/misc/config.guess ./config.guess
        cp -a --update=none --reflink=auto config.sub 
debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9.tmp
        mv 
debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9.tmp
 
debian/.debhelper/bucket/files/eeed1b8911b517397de6df8b1a16ff5fb9432ab599401044fc04392d1835bdf9
        cp -f /usr/share/misc/config.sub ./config.sub
   dh_autoreconf
        find ! -ipath "./debian/*" -a ! \( -path '*/.git/*' -o -path '*/.hg/*' 
-o -path '*/.bzr/*' -o -path '*/.svn/*' -o -path '*/CVS/*' \) -a  -type f -exec 
md5sum {} + -o -type l -printf "symlink  %p
" > debian/autoreconf.before
        grep -q ^XDT_ configure.ac
        autoreconf -f -i -v
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: no obvious need to run autopoint
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: configure.ac: no need to run autopoint (confirmed)
autoreconf: running: /usr/bin/autoconf --force
configure.ac:12: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.ac:12: You should use the 'AC_CONFIG_HEADERS' macro instead.
aclocal.m4:708: AM_CONFIG_HEADER is expanded from...
configure.ac:12: the top level
configure.ac:21: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:21: You should run autoupdate.
./lib/autoconf/headers.m4:664: AC_HEADER_STDC is expanded from...
configure.ac:21: the top level
configure.ac:42: warning: The macro 'AC_LANG_C' is obsolete.
configure.ac:42: You should run autoupdate.
./lib/autoconf/c.m4:73: AC_LANG_C is expanded from...
m4/acx_pthread.m4:63: ACX_PTHREAD is expanded from...
configure.ac:42: the top level
configure.ac:42: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:42: You should run autoupdate.
./lib/autoconf/general.m4:2976: AC_TRY_LINK is expanded from...
m4/acx_pthread.m4:63: ACX_PTHREAD is expanded from...
configure.ac:42: the top level
configure.ac:51: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/c.m4:271: AC_LANG_CPLUSPLUS is expanded from...
lib/m4sugar/m4sh.m4:689: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:696: AS_IF is expanded from...
./lib/autoconf/general.m4:2305: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2326: AC_CACHE_CHECK is expanded from...
m4/namespaces.m4:2: AC_CXX_NAMESPACES is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/general.m4:2903: AC_TRY_COMPILE is expanded from...
lib/m4sugar/m4sh.m4:689: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:696: AS_IF is expanded from...
./lib/autoconf/general.m4:2305: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2326: AC_CACHE_CHECK is expanded from...
m4/namespaces.m4:2: AC_CXX_NAMESPACES is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/c.m4:271: AC_LANG_CPLUSPLUS is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:51: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:51: You should run autoupdate.
./lib/autoconf/general.m4:2903: AC_TRY_COMPILE is expanded from...
m4/stl_hash.m4:11: AC_CXX_STL_HASH is expanded from...
configure.ac:51: the top level
configure.ac:52: warning: The macro 'AC_LANG_CPLUSPLUS' is obsolete.
configure.ac:52: You should run autoupdate.
./lib/autoconf/c.m4:271: AC_LANG_CPLUSPLUS is expanded from...
m4/stl_hash_fun.m4:14: AC_CXX_STL_HASH_FUN is expanded from...
configure.ac:52: the top level
configure.ac:52: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.ac:52: You should run autoupdate.
./lib/autoconf/general.m4:2903: AC_TRY_COMPILE is expanded from...
m4/stl_hash_fun.m4:14: AC_CXX_STL_HASH_FUN is expanded from...
configure.ac:52: the top level
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:16: installing './compile'
Makefile.am:156: warning: source file 'src/hashtable_test.cc' is in a 
subdirectory,
Makefile.am:156: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least one source file is in a subdirectory, but the 
'subdir-objects'
automake: automake option hasn't been enabled.  For now, the corresponding 
output
automake: object file(s) will be placed in the top-level directory.  However, 
this
automake: behavior may change in a future Automake major version, with object
automake: files being placed in the same subdirectory as the corresponding 
sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibility.
Makefile.am:140: warning: source file 'src/libc_allocator_with_realloc_test.cc' 
is in a subdirectory,
Makefile.am:140: but option 'subdir-objects' is disabled
Makefile.am:172: warning: source file 'src/simple_compat_test.cc' is in a 
subdirectory,
Makefile.am:172: but option 'subdir-objects' is disabled
Makefile.am:166: warning: source file 'src/simple_test.cc' is in a subdirectory,
Makefile.am:166: but option 'subdir-objects' is disabled
Makefile.am:148: warning: source file 'src/sparsetable_unittest.cc' is in a 
subdirectory,
Makefile.am:148: but option 'subdir-objects' is disabled
Makefile.am:125: warning: source file 'src/template_util_unittest.cc' is in a 
subdirectory,
Makefile.am:125: but option 'subdir-objects' is disabled
Makefile.am:179: warning: source file 'src/time_hash_map.cc' is in a 
subdirectory,
Makefile.am:179: but option 'subdir-objects' is disabled
Makefile.am:132: warning: source file 'src/type_traits_unittest.cc' is in a 
subdirectory,
Makefile.am:132: but option 'subdir-objects' is disabled
parallel-tests: installing './test-driver'
autoreconf: configure.ac: not running make: --make not given
autoreconf: Leaving directory '.'
        find ! -ipath "./debian/*" -a ! \( -path '*/.git/*' -o -path '*/.hg/*' 
-o -path '*/.bzr/*' -o -path '*/.svn/*' -o -path '*/CVS/*' \) -a  -type f -exec 
md5sum {} + -o -type l -printf "symlink  %p
" > debian/autoreconf.after
   dh_auto_configure
        ./configure --build=x86_64-linux-gnu --prefix=/usr 
--includedir=\${prefix}/include --mandir=\${prefix}/share/man 
--infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var 
--disable-option-checking --disable-silent-rules 
--libdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run 
--disable-maintainer-mode --disable-dependency-tracking
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 0.01
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking whether UID '995' is supported by ustar format... yes
checking whether GID '995' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether x86_64-linux-gnu-g++ accepts -g... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of x86_64-linux-gnu-g++... none
checking for gcc... x86_64-linux-gnu-gcc
checking whether the compiler supports GNU C... yes
checking whether x86_64-linux-gnu-gcc accepts -g... yes
checking for x86_64-linux-gnu-gcc option to enable C23 features... none needed
checking whether x86_64-linux-gnu-gcc understands -c and -o together... yes
checking dependency style of x86_64-linux-gnu-gcc... none
checking how to run the C preprocessor... x86_64-linux-gnu-gcc -E
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for memcpy... yes
checking for memmove... yes
checking for uint16_t... yes
checking for u_int16_t... yes
checking for __uint16... no
checking for long long... yes
checking for sys/resource.h... yes
checking for unistd.h... (cached) yes
checking for sys/time.h... yes
checking for sys/utsname.h... yes
checking for google/malloc_extension.h... no
checking whether the compiler implements namespaces... yes
checking the location of hash_map... <unordered_map>
checking how to include hash_fun directly... <functional>
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/config.h
config.status: executing depfiles commands
   dh_auto_build
        make -j2
make[1]: Entering directory '/<<PKGBUILDDIR>>'
[ -d src/sparsehash/internal ] || mkdir -p src/sparsehash/internal
echo "/*" > src/sparsehash/internal/_sparsehash_config
echo " * NOTE: This file is for internal use only." >> 
src/sparsehash/internal/_sparsehash_config
echo " *       Do not use these #defines in your own program!" >> 
src/sparsehash/internal/_sparsehash_config
echo " */" >> src/sparsehash/internal/_sparsehash_config
mawk '{prevline=currline; currline=$0;} \
        /^#/ {in_second_file = 1;} \
        !in_second_file {if (currline !~ /^ *$/) {inc[currline]=0}}; \
        in_second_file { for (i in inc) { \
                           if (index(currline, i) != 0) { \
                              print "\n"prevline"\n"currline; \
                              delete inc[i]; \
                           } \
                         } }' \
./src/config.h.include ./src/config.h \
>> src/sparsehash/internal/_sparsehash_config
mv -f src/sparsehash/internal/_sparsehash_config 
src/sparsehash/internal/sparseconfig.h
make  all-am
make[2]: Entering directory '/<<PKGBUILDDIR>>'
x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src  -I./src -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g 
-O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
-fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o 
template_util_unittest.o `test -f 'src/template_util_unittest.cc' || echo 
'./'`src/template_util_unittest.cc
x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src  -I./src -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g 
-O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
-fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o 
type_traits_unittest.o `test -f 'src/type_traits_unittest.cc' || echo 
'./'`src/type_traits_unittest.cc
x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src  -I./src -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g 
-O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
-fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o 
libc_allocator_with_realloc_test.o `test -f 
'src/libc_allocator_with_realloc_test.cc' || echo 
'./'`src/libc_allocator_with_realloc_test.cc
x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src  -I./src -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g 
-O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
-fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o 
sparsetable_unittest.o `test -f 'src/sparsetable_unittest.cc' || echo 
'./'`src/sparsetable_unittest.cc
In file included from src/sparsetable_unittest.cc:47:
./src/sparsehash/sparsetable: In member function ‘constexpr 
google::sparsetable<int>& google::sparsetable<int>::operator=(const 
google::sparsetable<int>&)’:
./src/sparsehash/sparsetable:1363:7: warning: implicitly-declared ‘constexpr 
google::sparsetable<int>::Settings& 
google::sparsetable<int>::Settings::operator=(const 
google::sparsetable<int>::Settings&)’ is deprecated [-Wdeprecated-copy]
 1363 | class sparsetable {
      |       ^~~~~~~~~~~
./src/sparsehash/sparsetable:1803:5: note: because 
‘google::sparsetable<int>::Settings’ has user-provided 
‘google::sparsetable<T, GROUP_SIZE, Alloc>::Settings::Settings(const 
google::sparsetable<T, GROUP_SIZE, Alloc>::Settings&) [with T = int; short 
unsigned int GROUP_SIZE = 48; Alloc = 
google::libc_allocator_with_realloc<int>]’
 1803 |     Settings(const Settings& s)
      |     ^~~~~~~~
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:621:9: note: synthesized method ‘constexpr 
google::sparsetable<int>& google::sparsetable<int>::operator=(const 
google::sparsetable<int>&)’ first required here
  621 |     y = x;
      |         ^
./src/sparsehash/sparsetable: In instantiation of ‘class 
google::sparsetable<int, 48, std::allocator<int> >’:
src/sparsetable_unittest.cc:633:63:   required from here
  633 |   sparsetable<int, DEFAULT_SPARSEGROUP_SIZE, allocator<int> > u, v;
      |                                                               ^
./src/sparsehash/sparsetable:1365:53: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1365 |   typedef typename Alloc::template rebind<T>::other value_alloc_type;
      |                                                     ^~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1366:36: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1366 |   typedef typename Alloc::template rebind<
      |                                    ^~~~~~~
 1367 |       sparsegroup<T, GROUP_SIZE, value_alloc_type> >::other 
vector_alloc;
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1392:6: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1392 |      nonempty_iterator;
      |      ^~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1397:6: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1397 |      const_nonempty_iterator;
      |      ^~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1398:52: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1398 |   typedef std::reverse_iterator<nonempty_iterator> 
reverse_nonempty_iterator;
      |                                                    
^~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1399:58: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1399 |   typedef std::reverse_iterator<const_nonempty_iterator> 
const_reverse_nonempty_iterator;
      |                                                          
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1405:6: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1405 |      destructive_iterator;
      |      ^~~~~~~~~~~~~~~~~~~~
./src/sparsehash/sparsetable:1366:36: error: no class template named 
‘rebind’ in ‘class std::allocator<int>’
 1366 |   typedef typename Alloc::template rebind<
      |                                    ^~~~~~~
 1367 |       sparsegroup<T, GROUP_SIZE, value_alloc_type> >::other 
vector_alloc;
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/sparsetable_unittest.cc:633:63: error: use of deleted function 
‘google::sparsetable<int, 48, std::allocator<int> >::sparsetable()’
  633 |   sparsetable<int, DEFAULT_SPARSEGROUP_SIZE, allocator<int> > u, v;
      |                                                               ^
./src/sparsehash/sparsetable:1363:7: note: ‘google::sparsetable<int, 48, 
std::allocator<int> >::sparsetable()’ is implicitly deleted because the 
default definition would be ill-formed:
 1363 | class sparsetable {
      |       ^~~~~~~~~~~
./src/sparsehash/sparsetable: At global scope:
./src/sparsehash/sparsetable:1363:7: error: no matching function for call to 
‘google::sparsetable<int, 48, std::allocator<int> >::Settings::Settings()’
  • there are 2 candidates
    • candidate 1: ‘google::sparsetable<T, GROUP_SIZE, 
Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, 
Alloc>::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = 
std::allocator<int>]’
      ./src/sparsehash/sparsetable:1803:5:
       1803 |     Settings(const Settings& s)
            |     ^~~~~~~~
      • candidate expects 1 argument, 0 provided
    • candidate 2: ‘google::sparsetable<T, GROUP_SIZE, 
Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, 
Alloc>::allocator_type&, size_type, size_type) [with T = int; short unsigned 
int GROUP_SIZE = 48; Alloc = std::allocator<int>; google::sparsetable<T, 
GROUP_SIZE, Alloc>::allocator_type = std::allocator<int>; size_type = long 
unsigned int]’
      ./src/sparsehash/sparsetable:1800:5:
       1800 |     Settings(const allocator_type& a, size_type sz = 0, size_type 
n = 0)
            |     ^~~~~~~~
      • candidate expects 3 arguments, 0 provided
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:633:63: note: use 
‘-fdiagnostics-all-candidates’ to display considered candidates
  633 |   sparsetable<int, DEFAULT_SPARSEGROUP_SIZE, allocator<int> > u, v;
      |                                                               ^
src/sparsetable_unittest.cc:633:66: error: use of deleted function 
‘google::sparsetable<int, 48, std::allocator<int> >::sparsetable()’
  633 |   sparsetable<int, DEFAULT_SPARSEGROUP_SIZE, allocator<int> > u, v;
      |                                                                  ^
src/sparsetable_unittest.cc:633:66: note: use 
‘-fdiagnostics-all-candidates’ to display considered candidates
src/sparsetable_unittest.cc:635:7: error: ‘class google::sparsetable<int, 48, 
std::allocator<int> >’ has no member named ‘resize’
  635 |     u.resize(s);
      |       ^~~~~~
src/sparsetable_unittest.cc:637:9: error: ‘class google::sparsetable<int, 48, 
std::allocator<int> >’ has no member named ‘set’
  637 |       u.set(i, i + 1);
      |         ^~~
src/sparsetable_unittest.cc:641:14: error: no matching function for call to 
‘google::sparsetable<int, 48, std::allocator<int> >::erase(int&)’
  641 |       v.erase(i);
      |       ~~~~~~~^~~
  • there are 2 candidates
    • candidate 1: ‘void google::sparsetable<T, GROUP_SIZE, 
Alloc>::erase(iterator) [with T = int; short unsigned int GROUP_SIZE = 48; 
Alloc = std::allocator<int>; iterator = 
google::table_iterator<google::sparsetable<int, 48, std::allocator<int> > >]’
      ./src/sparsehash/sparsetable:1627:8:
       1627 |   void erase(iterator pos) {
            |        ^~~~~
      • no known conversion for argument 1 from ‘int’ to 
‘google::sparsetable<int, 48, std::allocator<int> >::iterator’ {aka 
‘google::table_iterator<google::sparsetable<int, 48, std::allocator<int> > 
>’}
        ./src/sparsehash/sparsetable:1627:23:
         1627 |   void erase(iterator pos) {
              |              ~~~~~~~~~^~~
    • candidate 2: ‘void google::sparsetable<T, GROUP_SIZE, 
Alloc>::erase(iterator, iterator) [with T = int; short unsigned int GROUP_SIZE 
= 48; Alloc = std::allocator<int>; iterator = 
google::table_iterator<google::sparsetable<int, 48, std::allocator<int> > >]’
      ./src/sparsehash/sparsetable:1631:8:
       1631 |   void erase(iterator start_it, iterator end_it) {
            |        ^~~~~
      • candidate expects 2 arguments, 1 provided
src/sparsetable_unittest.cc:645:10: error: ‘class google::sparsetable<int, 
48, std::allocator<int> >’ has no member named ‘num_nonempty’
  645 |   TEST(u.num_nonempty() == 0);
      |          ^~~~~~~~~~~~
src/sparsetable_unittest.cc:66:38: note: in definition of macro ‘TEST’
   66 |                                     (cond) ? "yes" : "no");
      |                                      ^~~~
src/sparsetable_unittest.cc:646:49: error: no match for ‘operator[]’ 
(operand types are ‘google::sparsetable<int, 48, std::allocator<int> >’ and 
‘int’)
  646 |   out += snprintf(out, LEFT, "v[0]: %d\n", int(v[0]));
      |                                                 ^
src/sparsetable_unittest.cc:647:53: error: no match for ‘operator[]’ 
(operand types are ‘google::sparsetable<int, 48, std::allocator<int> >’ and 
‘int’)
  647 |   out += snprintf(out, LEFT, "v[39999]: %d\n", int(v[39999]));
      |                                                     ^
./src/sparsehash/sparsetable: In member function ‘constexpr 
google::sparsetable<std::__cxx11::basic_string<char> >& 
google::sparsetable<std::__cxx11::basic_string<char> >::operator=(const 
google::sparsetable<std::__cxx11::basic_string<char> >&)’:
./src/sparsehash/sparsetable:1363:7: warning: implicitly-declared ‘constexpr 
google::sparsetable<std::__cxx11::basic_string<char> >::Settings& 
google::sparsetable<std::__cxx11::basic_string<char> 
>::Settings::operator=(const 
google::sparsetable<std::__cxx11::basic_string<char> >::Settings&)’ is 
deprecated [-Wdeprecated-copy]
 1363 | class sparsetable {
      |       ^~~~~~~~~~~
./src/sparsehash/sparsetable:1803:5: note: because 
‘google::sparsetable<std::__cxx11::basic_string<char> >::Settings’ has 
user-provided ‘google::sparsetable<T, GROUP_SIZE, 
Alloc>::Settings::Settings(const google::sparsetable<T, GROUP_SIZE, 
Alloc>::Settings&) [with T = std::__cxx11::basic_string<char>; short unsigned 
int GROUP_SIZE = 48; Alloc = 
google::libc_allocator_with_realloc<std::__cxx11::basic_string<char> >]’
 1803 |     Settings(const Settings& s)
      |     ^~~~~~~~
src/sparsetable_unittest.cc: In function ‘void TestAllocator()’:
src/sparsetable_unittest.cc:657:9: note: synthesized method ‘constexpr 
google::sparsetable<std::__cxx11::basic_string<char> >& 
google::sparsetable<std::__cxx11::basic_string<char> >::operator=(const 
google::sparsetable<std::__cxx11::basic_string<char> >&)’ first required here
  657 |     b = a;
      |         ^
x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I./src  -I./src -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g 
-O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
-fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o 
hashtable_test.o `test -f 'src/hashtable_test.cc' || echo 
'./'`src/hashtable_test.cc
make[2]: *** [Makefile:973: sparsetable_unittest.o] Error 1
make[2]: *** Waiting for unfinished jobs....
src/hashtable_test.cc: In member function ‘void 
{anonymous}::TEST_HashtableTest_SimpleDataTypeOptimizations::Run()’:
src/hashtable_test.cc:1777:27: warning: implicitly-declared ‘constexpr 
{anonymous}::Memmove& {anonymous}::Memmove::operator=(const 
{anonymous}::Memmove&)’ is deprecated [-Wdeprecated-copy]
 1777 |     memmove[i] = Memmove(i);
      |                           ^
src/hashtable_test.cc:1742:3: note: because ‘{anonymous}::Memmove’ has 
user-provided ‘{anonymous}::Memmove::Memmove(const {anonymous}::Memmove&)’
 1742 |   Memmove(const Memmove& that) { this->i = that.i; num_copies++; }
      |   ^~~~~~~
src/hashtable_test.cc:1783:31: warning: implicitly-declared ‘constexpr 
{anonymous}::NoMemmove& {anonymous}::NoMemmove::operator=(const 
{anonymous}::NoMemmove&)’ is deprecated [-Wdeprecated-copy]
 1783 |     nomemmove[i] = NoMemmove(i);
      |                               ^
src/hashtable_test.cc:1752:3: note: because ‘{anonymous}::NoMemmove’ has 
user-provided ‘{anonymous}::NoMemmove::NoMemmove(const 
{anonymous}::NoMemmove&)’
 1752 |   NoMemmove(const NoMemmove& that) { this->i = that.i; num_copies++; }
      |   ^~~~~~~~~
src/hashtable_test.cc:1789:45: warning: implicitly-declared ‘constexpr 
{anonymous}::Memmove& {anonymous}::Memmove::operator=(const 
{anonymous}::Memmove&)’ is deprecated [-Wdeprecated-copy]
 1789 |     memmove_nonstandard_alloc[i] = Memmove(i);
      |                                             ^
src/hashtable_test.cc:1742:3: note: because ‘{anonymous}::Memmove’ has 
user-provided ‘{anonymous}::Memmove::Memmove(const {anonymous}::Memmove&)’
 1742 |   Memmove(const Memmove& that) { this->i = that.i; num_copies++; }
      |   ^~~~~~~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_SparseHashMap<int, int, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_SparseHashMap<int, int, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  181 |         TEST_onetype_##superclass##_##testname<superclass##_type1> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_SparseHashSet<int, {anonymous}::Hasher, 
{anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_SparseHashSet<int, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  185 |         TEST_onetype_##superclass##_##testname<superclass##_type2> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_SparseHashtable<int, int, 
{anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, 
{anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> 
>]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_SparseHashtable<int, int, 
{anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, 
{anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  189 |         TEST_onetype_##superclass##_##testname<superclass##_type3> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_DenseHashMap<int, int, kEmptyInt, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_DenseHashMap<int, int, kEmptyInt, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  193 |         TEST_onetype_##superclass##_##testname<superclass##_type4> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_DenseHashSet<int, kEmptyInt, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_DenseHashSet<int, kEmptyInt, 
{anonymous}::Hasher, {anonymous}::Hasher, {anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  197 |         TEST_onetype_##superclass##_##testname<superclass##_type5> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
src/hashtable_test.cc: In instantiation of ‘void 
{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::Run() [with 
TypeParam = google::HashtableInterface_DenseHashtable<int, int, kEmptyInt, 
{anonymous}::Hasher, {anonymous}::Negation<int>, {anonymous}::SetKey<int, 
{anonymous}::Negation<int> >, {anonymous}::Hasher, {anonymous}::Alloc<int> 
>]’:
src/hashtable_test.cc:571:1:   required from 
‘{anonymous}::TEST_onetype_HashtableIntTest_Typedefs<TypeParam>::TEST_onetype_HashtableIntTest_Typedefs()
 [with TypeParam = google::HashtableInterface_DenseHashtable<int, int, 
kEmptyInt, {anonymous}::Hasher, {anonymous}::Negation<int>, 
{anonymous}::SetKey<int, {anonymous}::Negation<int> >, {anonymous}::Hasher, 
{anonymous}::Alloc<int> >]’
  171 |       Run();                                                            
\
      |       ^~~
src/hashtable_test.cc:571:1:   required from here
  201 |         TEST_onetype_##superclass##_##testname<superclass##_type6> t;   
\
      |                                                                    ^
src/hashtable_test.cc:577:32: warning: variable ‘kt’ set but not used 
[-Wunused-but-set-variable=]
  577 |   typename TypeParam::key_type kt;
      |                                ^~
src/hashtable_test.cc:583:33: warning: variable ‘st’ set but not used 
[-Wunused-but-set-variable=]
  583 |   typename TypeParam::size_type st;
      |                                 ^~
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: *** [Makefile:756: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j2 returned exit code 2
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit 
status 2
--------------------------------------------------------------------------------

--- End Message ---
--- Begin Message ---
Source: sparsehash
Source-Version: 2.0.4-2
Done: Peter Blackman <[email protected]>

We believe that the bug you reported is fixed in the latest version of
sparsehash, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Peter Blackman <[email protected]> (supplier of updated sparsehash package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sat, 15 Aug 2026 14:59:44 +0100
Source: sparsehash
Architecture: source
Version: 2.0.4-2
Distribution: unstable
Urgency: high
Maintainer: Debian Science Maintainers 
<[email protected]>
Changed-By: Peter Blackman <[email protected]>
Closes: 1143707
Changes:
 sparsehash (2.0.4-2) unstable; urgency=high
 .
   * Team upload
   * Use c++17, (Closes: #1143707)
Checksums-Sha1:
 8ff3cbe722afc0fd94120f24996b47922ba63ede 1969 sparsehash_2.0.4-2.dsc
 d5f7f9c91b5095a58196dfd93577723dee12b79d 5068 sparsehash_2.0.4-2.debian.tar.xz
 df222c121e26a84bcbca1c1249e4cbea0fcdbcf4 6436 
sparsehash_2.0.4-2_source.buildinfo
Checksums-Sha256:
 c8bc218ee1d2e2d118392180e2592ffa4652074b23044ac87bcab02fc6631321 1969 
sparsehash_2.0.4-2.dsc
 1125972b58a646d890c49032cc7a62703d259e7c9241a6c70851310a3ac3332e 5068 
sparsehash_2.0.4-2.debian.tar.xz
 cee7adb18dfbfc5e5764c6e9cfb06937b11153d9655f54ec3e6ed9a1eccdf159 6436 
sparsehash_2.0.4-2_source.buildinfo
Files:
 bd15a6701b5883fad2a0161caf3e03a4 1969 libdevel optional sparsehash_2.0.4-2.dsc
 9e16edfaca345b3d4c65f79ec379b0ec 5068 libdevel optional 
sparsehash_2.0.4-2.debian.tar.xz
 31fa21e8d5465888c62cc0e0da1eef99 6436 libdevel optional 
sparsehash_2.0.4-2_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE33HzyvBUkEl4+kj4tty6Zj6hsVAFAmqAc50ACgkQtty6Zj6h
sVCUNQ//Y27Gd7efb4WXCfA6Id7I82E7LsTbFXK78QVu/2V98aTXPKu89CQusFJ6
tfvKeZo8dMhg6IDpYFLyUSBOO1sb/Ab6Ihmby/ZTtFMuH9J+Q2mvfv2xJx+Lsk8Z
qX5jFUTATLTYiiUolcSToCOVBgLxmEoezxkoGXI7g5WnEOx38zoO8hcMEDU3Idpw
qsmbniWWF1ZNzv8ORSvtxnK4MPZP17GiLLU3zav2BgWLeixpIW/wV+RYg3tV+3hH
TusukGw8RXmoZkoce68E/AcjP2UkNOkrqbDpev/SaWczECNfZHpeggxBjd+v+QM3
vkT5kILMTrMtZXinJpjhNWowU++1TTWxvfnyU7OviFGxH/Rfc2vOOa6ztbgD5mlW
j7rr4Fx6fyhPig8ylqFBvVSjPSnVm9p9aKRji5Ztc9+DVkA0ZMTs48NJSP1RRcv9
3Rh+lcYZUhCm6hyYATBJ4wj3YEd5YNGb0iW1tYcReabW5d6yscw/+eil8my6grtI
IIivxtCBKc3sYSBmMGS1w5VE+VU366JvgzPLFjkeUyaABVniex1tiivkDV8pKVw5
whDILXTTRkrVJlUqRUW0WIQATjwYESagpdaA1aQtqetlkHLwYqAcS2WgdhNNoIRV
oH9JzkksBAJXT0Q1/puAPRDHI10Qw6ryF+aBvKQ6/ZUDH3c/CYA=
=kCs5
-----END PGP SIGNATURE-----

Attachment: pgpI3xtbeVYjb.pgp
Description: PGP signature


--- End Message ---

Reply via email to