Running as unit: rb-build-i386_11-33983.service ==================================================================================== Fri Nov 22 17:27:00 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job reproducible_builder_i386_11) on jenkins, called using "ionos6-i386 ionos2-i386" as arguments. Fri Nov 22 17:27:00 UTC 2024 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-9uGzjmzN" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Fri Nov 22 17:27:00 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos6-i386.debian.net is marked as down. Fri Nov 22 17:27:00 UTC 2024 - checking via ssh if ionos6-i386.debian.net is up. removed '/tmp/read-only-fs-test-N1YUkj' Fri Nov 22 17:27:01 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos2-i386.debian.net is marked as down. Fri Nov 22 17:27:01 UTC 2024 - checking via ssh if ionos2-i386.debian.net is up. removed '/tmp/read-only-fs-test-FITDZF' ok, let's check if sparsehash is building anywhere yet… ok, sparsehash is not building anywhere… UPDATE 1 ============================================================================= Initialising reproducibly build of sparsehash in trixie on i386 on jenkins now. 1st build will be done on ionos6-i386.debian.net. 2nd build will be done on ionos2-i386.debian.net. ============================================================================= Fri Nov 22 17:27:17 UTC 2024 I: starting to build sparsehash/trixie/i386 on jenkins on '2024-11-22 17:27' Fri Nov 22 17:27:17 UTC 2024 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/i386_11/33983/console.log 1732296437 i386 trixie sparsehash Fri Nov 22 17:27:17 UTC 2024 I: Downloading source for trixie/sparsehash=2.0.3-2 --2024-11-22 17:27:17-- http://deb.debian.org/debian/pool/main/s/sparsehash/sparsehash_2.0.3-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1818 (1.8K) [text/prs.lines.tag] Saving to: ‘sparsehash_2.0.3-2.dsc’ 0K . 100% 284M=0s 2024-11-22 17:27:17 (284 MB/s) - ‘sparsehash_2.0.3-2.dsc’ saved [1818/1818] --2024-11-22 17:27:17-- http://deb.debian.org/debian/pool/main/s/sparsehash/sparsehash_2.0.3-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 1818 (1.8K) [text/prs.lines.tag] Saving to: ‘sparsehash_2.0.3-2.dsc’ 0K . 100% 284M=0s 2024-11-22 17:27:17 (284 MB/s) - ‘sparsehash_2.0.3-2.dsc’ saved [1818/1818] Fri Nov 22 17:27:17 UTC 2024 I: sparsehash_2.0.3-2.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: sparsehash Binary: libsparsehash-dev Architecture: all Version: 2.0.3-2 Maintainer: Athena Capital Research Uploaders: Roberto C. Sanchez Homepage: https://github.com/sparsehash/sparsehash Standards-Version: 4.5.0 Build-Depends: debhelper (>= 10) Package-List: libsparsehash-dev deb libdevel optional arch=all Checksums-Sha1: 94a9aad9167275af41b13122c60754ad1a5adb34 322046 sparsehash_2.0.3.orig.tar.gz b7967d2776fcbcda0aa56f066fdaf9723632068c 4740 sparsehash_2.0.3-2.debian.tar.xz Checksums-Sha256: 05e986a5c7327796dad742182b2d10805a8d4f511ad090da0490f146c1ff7a8c 322046 sparsehash_2.0.3.orig.tar.gz 3a2dfb42b354c7f654b065a5db1a31ae1c7bb76cc703f65be5f80192ca2ab2df 4740 sparsehash_2.0.3-2.debian.tar.xz Files: d8d5e2538c1c25577b3f066d7a55e99e 322046 sparsehash_2.0.3.orig.tar.gz 6a312c140a6f33018b78df81b4bab4ea 4740 sparsehash_2.0.3-2.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEz9ERzDttUsU/BH8iLNd4Xt2nsg8FAl6jrUUACgkQLNd4Xt2n sg+7DRAAr5TnzCu+JmXvz3RIC1dRUvOnVNuFevFnl8YdRb5dq226+rJQEXv/BwvW ev4uoDWAhus1gkPW3sJeBxowpcjrz5J/YJCnHWrTHP23Z/WqXmjAiiwxyBuDhi+u xX6LbgGlUD0U5x8kLNHZ/d7pGp3AL5Rdf+pBB5rxuYKfbQ44pKDAeNzvZeZAzbIl f/VrpU/7yIQwOEqelb/J8j07Vo4PKxK0Ei/I9UOE+XnTTXUY/jL0O7hvtOP0pjzc iBksNJRxQdFbCW6PtXaniXx8AKFInI0IjS+hMB5XaR4MovLQ7BLdWMcYh35PBYCc BVc6rAnveG1wI3e4bd957/gLrUiTXnYl0i0ynJCHcQBasTEC18zpaJoksJI8yl3c hQej7pjIZIb4p3sQ05EKoDATUZGMdBZ9oF9i9n4zMu5xtwyjecYpKwLfmajkkr9G yXgKt80CMbd5jMWMixkmfPOo1kj8/u+ZAmhMoDKkM4r4AT49Hnq5c+SmCSZP1dEd KvFtgS+ITWiXNaDc6c22rD2dcrbSX+97VvsXx6O72w4rO+sMgPua2aHZXayYUnkf GkK9pDK/wG9M6ha6f/dhG2nz6O4zwzCRJt5pS4oDlNXiSVz85c1aZ5cAkV0lnF6J rKVvwX58ie8/mHHCh00+gpHQrN8nMFhO8++BI//Gmtcc66/qAXQ= =T/dz -----END PGP SIGNATURE----- Fri Nov 22 17:27:17 UTC 2024 I: Checking whether the package is not for us Fri Nov 22 17:27:17 UTC 2024 I: Starting 1st build on remote node ionos6-i386.debian.net. Fri Nov 22 17:27:17 UTC 2024 I: Preparing to do remote build '1' on ionos6-i386.debian.net. Fri Nov 22 17:27:17 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos6-i386.debian.net is marked as down. Fri Nov 22 17:27:18 UTC 2024 - checking via ssh if ionos6-i386.debian.net is up. removed '/tmp/read-only-fs-test-ssmaEv' ==================================================================================== Thu Dec 25 23:50:18 UTC 2025 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos6-i386, called using "1 sparsehash trixie /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY 2.0.3-2" as arguments. Thu Dec 25 23:50:18 UTC 2025 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-qTk7yIHa" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Thu Dec 25 23:50:18 UTC 2025 I: Downloading source for trixie/sparsehash=2.0.3-2 Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (7190 kB/s) Download complete and in download only mode Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (7190 kB/s) Download complete and in download only mode ============================================================================= Building sparsehash in trixie on i386 on ionos6-i386 now. Date: Fri Dec 26 00:50:19 CET 2025 Date UTC: Thu Dec 25 23:50:19 UTC 2025 ============================================================================= W: /root/.pbuilderrc does not exist I: Logging to b1/build.log I: pbuilder: network access will be disabled during build I: Current time: Thu Dec 25 11:50:20 -12 2025 I: pbuilder-time-stamp: 1766706620 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 gpgv: using RSA key CFD111CC3B6D52C53F047F222CD7785EDDA7B20F gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./sparsehash_2.0.3-2.dsc: no acceptable signature found dpkg-source: info: extracting sparsehash in sparsehash-2.0.3 dpkg-source: info: unpacking sparsehash_2.0.3.orig.tar.gz dpkg-source: info: unpacking sparsehash_2.0.3-2.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 00_adjust_upstream_build.patch I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='i386' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' DISTRIBUTION='trixie' HOME='/root' HOST_ARCH='i386' IFS=' ' INVOCATION_ID='db2e731cbdc84679aace7f89d8eb94a3' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' LD_LIBRARY_PATH='/usr/lib/libeatmydata' LD_PRELOAD='libeatmydata.so' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='86886' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_pAck --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' SUDO_GID='112' SUDO_UID='107' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos6-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian trixie/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian trixie/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian trixie/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian trixie/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian trixie/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian trixie/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian trixie/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian trixie/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian trixie/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian trixie/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian trixie/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian trixie/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian trixie/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian trixie/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian trixie/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian trixie/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian trixie/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian trixie/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian trixie/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian trixie/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian trixie/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian trixie/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian trixie/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian trixie/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian trixie/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian trixie/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian trixie/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian trixie/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian trixie/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (80.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes dpkg-buildpackage: info: source package sparsehash dpkg-buildpackage: info: source version 2.0.3-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Roberto C. Sanchez dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --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 -an --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 configure.ac:12: warning: 'AM_CONFIG_HEADER': this macro is obsolete. configure.ac:12: You should use the 'AC_CONFIG_HEADERS' macro instead. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:745: 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:663: 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:72: 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:2918: 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:270: AC_LANG_CPLUSPLUS is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:2845: AC_TRY_COMPILE is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:270: 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:2845: 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:270: 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:2845: 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 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 incompatibilities. 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' 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=i686-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/i386-linux-gnu --libexecdir=\${prefix}/lib/i386-linux-gnu --disable-maintainer-mode --disable-dependency-tracking checking for a BSD-compatible install... /usr/bin/install -c 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 for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C++... yes checking whether g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking whether make supports the include directive... yes (GNU style) checking dependency style of g++... none checking for gcc... gcc checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking how to run the C preprocessor... 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... checking how to include hash_fun directly... 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 -j22 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o template_util_unittest.o `test -f 'src/template_util_unittest.cc' || echo './'`src/template_util_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o type_traits_unittest.o `test -f 'src/type_traits_unittest.cc' || echo './'`src/type_traits_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -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 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o sparsetable_unittest.o `test -f 'src/sparsetable_unittest.cc' || echo './'`src/sparsetable_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o hashtable_test.o `test -f 'src/hashtable_test.cc' || echo './'`src/hashtable_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_test.o `test -f 'src/simple_test.cc' || echo './'`src/simple_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_compat_test.o `test -f 'src/simple_compat_test.cc' || echo './'`src/simple_compat_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o time_hash_map-time_hash_map.o `test -f 'src/time_hash_map.cc' || echo './'`src/time_hash_map.cc echo 'prefix=/usr' > "libsparsehash.pc".tmp echo 'includedir='`echo '/usr/include' | sed 's@^/usr@${prefix}@'` >> "libsparsehash.pc".tmp echo '' >> "libsparsehash.pc".tmp echo 'Name: sparsehash' >> "libsparsehash.pc".tmp echo 'Version: 2.0.3' >> "libsparsehash.pc".tmp grep '^Summary:' ./packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "libsparsehash.pc".tmp grep '^URL: ' ./packages/rpm/rpm.spec >> "libsparsehash.pc".tmp echo 'Requires:' >> "libsparsehash.pc".tmp echo 'Libs:' >> "libsparsehash.pc".tmp echo 'Cflags: -I${includedir}' >> "libsparsehash.pc".tmp mv -f "libsparsehash.pc".tmp "libsparsehash.pc" g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o template_util_unittest template_util_unittest.o In file included from src/sparsetable_unittest.cc:47: ./src/sparsehash/sparsetable: In member function 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from src/simple_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from ./src/google/sparse_hash_set:34, from src/simple_compat_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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; | ^~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_map:93, from src/time_hash_map.cc:87: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/stl_tree.h:63, from /usr/include/c++/14/map:62, from src/time_hash_map.cc:81: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<4, 4>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<8, 8>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<16, 16>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<256, 256>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/internal/densehashtable.h:101, from ./src/sparsehash/dense_hash_map:104, from src/time_hash_map.cc:86: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:634:9: required from here 634 | ht[1] = 2; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/specfun.h:43, from /usr/include/c++/14/cmath:3898, from /usr/include/c++/14/math.h:36, from src/hashtable_test.cc:49: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/sparsetable:247: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/dense_hash_map:113:7: required from here 113 | class dense_hash_map { | ^~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1706:5: required from 'bool google::sparsetable::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 345 | bool read_metadata(INPUT *fp) { return rep.read_metadata(fp); } | ~~~~~~~~~~~~~~~~~^~~~ src/hashtable_test.cc:1451:3: required from here 1451 | EXPECT_TRUE(ht_in.read_metadata(fp)); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:614:21: required from 'bool google::dense_hashtable::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair p = rep.insert(obj); | ~~~~~~~~~~^~~~~ src/hashtable_test.cc:1903:19: required from here 1903 | ht2["hi"].insert("lo"); | ~~~~~~~~~~~~~~~~^~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'class std::__cxx11::basic_string'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/string:54, from /usr/include/c++/14/bits/locale_classes.h:40, from /usr/include/c++/14/bits/ios_base.h:41, from /usr/include/c++/14/ios:44, from /usr/include/c++/14/ostream:40, from /usr/include/c++/14/iostream:41, from src/hashtable_test.cc:56: /usr/include/c++/14/bits/basic_string.h:86:11: note: 'class std::__cxx11::basic_string' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_test simple_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o time_hash_map time_hash_map-time_hash_map.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j22 check "TESTSUITEFLAGS=-j22 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: libc_allocator_with_realloc_test PASS: template_util_unittest PASS: type_traits_unittest PASS: simple_test PASS: simple_compat_test PASS: sparsetable_unittest PASS: hashtable_test ============================================================================ Testsuite summary for sparsehash 2.0.3 ============================================================================ # TOTAL: 7 # PASS: 7 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ============================================================================ make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot dh_prep rm -f -- debian/libsparsehash-dev.substvars rm -fr -- debian/.debhelper/generated/libsparsehash-dev/ debian/libsparsehash-dev/ debian/tmp/ dh_installdirs install -m0755 -d debian/libsparsehash-dev install -m0755 -d debian/libsparsehash-dev/usr/include debian/libsparsehash-dev/usr/include/google debian/rules override_dh_auto_install make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j22 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 src/google/dense_hash_map src/google/dense_hash_set src/google/sparse_hash_map src/google/sparse_hash_set src/google/sparsetable src/google/template_util.h src/google/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt TODO doc/dense_hash_map.html doc/dense_hash_set.html doc/sparse_hash_map.html doc/sparse_hash_set.html doc/sparsetable.html doc/implementation.html doc/performance.html doc/index.html doc/designstyle.css '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/sparsehash/dense_hash_map src/sparsehash/dense_hash_set src/sparsehash/sparse_hash_map src/sparsehash/sparse_hash_set src/sparsehash/sparsetable src/sparsehash/template_util.h src/sparsehash/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig/libsparsehash.pc | cut -f2 -d' ') ; \ [ "2.0.3" = "$PKG_CONFIG_SCRIPT_VERSION" ] || \ (echo "debian/changelog upstream version '2.0.3' does not match .pc script version '$PKG_CONFIG_SCRIPT_VERSION'"; exit 1) # Fix upstream doc install locations install -d /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_installdocs install -p -m0644 debian/copyright debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/copyright install -m0755 -d debian/libsparsehash-dev/usr/share/doc-base/ install -p -m0644 debian/libsparsehash-dev.doc-base debian/libsparsehash-dev/usr/share/doc-base/libsparsehash-dev.sparsehash dh_installchangelogs install -m0755 -d debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev install -p -m0644 debian/.debhelper/generated/libsparsehash-dev/dh_installchangelogs.dch.trimmed debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog.Debian install -p -m0644 ./ChangeLog debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog dh_perl dh_link dh_strip_nondeterminism dh_compress cd debian/libsparsehash-dev chmod a-x usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian gzip -9nf usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian cd '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 find debian/libsparsehash-dev ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s find debian/libsparsehash-dev/usr/share/doc -type f -a -true -a ! -regex 'debian/libsparsehash-dev/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755 find debian/libsparsehash-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 dh_missing dh_installdeb install -m0755 -d debian/libsparsehash-dev/DEBIAN dh_gencontrol install -m0755 -d debian/libsparsehash-dev/DEBIAN echo misc:Depends= >> debian/libsparsehash-dev.substvars echo misc:Pre-Depends= >> debian/libsparsehash-dev.substvars dpkg-gencontrol -plibsparsehash-dev -ldebian/changelog -Tdebian/libsparsehash-dev.substvars -cdebian/control -Pdebian/libsparsehash-dev chmod 0644 -- debian/libsparsehash-dev/DEBIAN/control chown 0:0 -- debian/libsparsehash-dev/DEBIAN/control dh_md5sums install -m0755 -d debian/libsparsehash-dev/DEBIAN cd debian/libsparsehash-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums chmod 0644 -- debian/libsparsehash-dev/DEBIAN/md5sums chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --build debian/libsparsehash-dev .. dpkg-deb: building package 'libsparsehash-dev' in '../libsparsehash-dev_2.0.3-2_all.deb'. dpkg-genbuildinfo --build=binary -O../sparsehash_2.0.3-2_i386.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/86886 and its subdirectories I: Current time: Thu Dec 25 11:52:39 -12 2025 I: pbuilder-time-stamp: 1766706759 Thu Dec 25 23:52:39 UTC 2025 I: Signing ./b1/sparsehash_2.0.3-2_i386.buildinfo as sparsehash_2.0.3-2_i386.buildinfo.asc Thu Dec 25 23:52:39 UTC 2025 I: Signed ./b1/sparsehash_2.0.3-2_i386.buildinfo as ./b1/sparsehash_2.0.3-2_i386.buildinfo.asc Thu Dec 25 23:52:39 UTC 2025 - build #1 for sparsehash/trixie/i386 on ionos6-i386 done. Starting cleanup. All cleanup done. Thu Dec 25 23:52:39 UTC 2025 - reproducible_build.sh stopped running as /tmp/jenkins-script-qTk7yIHa, removing. /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY: total 16 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 17:29 b1 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 17:27 b2 -rw------- 1 jenkins jenkins 2931 Nov 22 17:27 rbuildlog.LyqN9By -rw-r--r-- 1 jenkins jenkins 1818 Apr 25 2020 sparsehash_2.0.3-2.dsc /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1: total 376 -rw-r--r-- 1 jenkins jenkins 269707 Nov 22 17:29 build.log -rw-r--r-- 1 jenkins jenkins 75920 Nov 22 17:29 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Nov 22 17:29 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Nov 22 17:29 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4652 Nov 22 17:29 sparsehash_2.0.3-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5534 Nov 22 17:29 sparsehash_2.0.3-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1092 Nov 22 17:29 sparsehash_2.0.3-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1209 Nov 22 17:29 sparsehash_2.0.3-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2: total 0 Fri Nov 22 17:29:41 UTC 2024 I: Deleting $TMPDIR on ionos6-i386.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Thu Dec 25 11:50:20 -12 2025 I: pbuilder-time-stamp: 1766706620 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 gpgv: using RSA key CFD111CC3B6D52C53F047F222CD7785EDDA7B20F gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./sparsehash_2.0.3-2.dsc: no acceptable signature found dpkg-source: info: extracting sparsehash in sparsehash-2.0.3 dpkg-source: info: unpacking sparsehash_2.0.3.orig.tar.gz dpkg-source: info: unpacking sparsehash_2.0.3-2.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 00_adjust_upstream_build.patch I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='i386' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' DISTRIBUTION='trixie' HOME='/root' HOST_ARCH='i386' IFS=' ' INVOCATION_ID='db2e731cbdc84679aace7f89d8eb94a3' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' LD_LIBRARY_PATH='/usr/lib/libeatmydata' LD_PRELOAD='libeatmydata.so' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='86886' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_pAck --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' SUDO_GID='112' SUDO_UID='107' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos6-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian trixie/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian trixie/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian trixie/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian trixie/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian trixie/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian trixie/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian trixie/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian trixie/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian trixie/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian trixie/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian trixie/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian trixie/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian trixie/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian trixie/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian trixie/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian trixie/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian trixie/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian trixie/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian trixie/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian trixie/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian trixie/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian trixie/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian trixie/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian trixie/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian trixie/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian trixie/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian trixie/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian trixie/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian trixie/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (80.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes dpkg-buildpackage: info: source package sparsehash dpkg-buildpackage: info: source version 2.0.3-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Roberto C. Sanchez dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --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 -an --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 configure.ac:12: warning: 'AM_CONFIG_HEADER': this macro is obsolete. configure.ac:12: You should use the 'AC_CONFIG_HEADERS' macro instead. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:745: 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:663: 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:72: 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:2918: 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:270: AC_LANG_CPLUSPLUS is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:2845: AC_TRY_COMPILE is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:270: 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:2845: 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:270: 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:2845: 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 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 incompatibilities. 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' 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=i686-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/i386-linux-gnu --libexecdir=\${prefix}/lib/i386-linux-gnu --disable-maintainer-mode --disable-dependency-tracking checking for a BSD-compatible install... /usr/bin/install -c 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 for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C++... yes checking whether g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking whether make supports the include directive... yes (GNU style) checking dependency style of g++... none checking for gcc... gcc checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking how to run the C preprocessor... 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... checking how to include hash_fun directly... 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 -j22 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o template_util_unittest.o `test -f 'src/template_util_unittest.cc' || echo './'`src/template_util_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o type_traits_unittest.o `test -f 'src/type_traits_unittest.cc' || echo './'`src/type_traits_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -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 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o sparsetable_unittest.o `test -f 'src/sparsetable_unittest.cc' || echo './'`src/sparsetable_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o hashtable_test.o `test -f 'src/hashtable_test.cc' || echo './'`src/hashtable_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_test.o `test -f 'src/simple_test.cc' || echo './'`src/simple_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_compat_test.o `test -f 'src/simple_compat_test.cc' || echo './'`src/simple_compat_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o time_hash_map-time_hash_map.o `test -f 'src/time_hash_map.cc' || echo './'`src/time_hash_map.cc echo 'prefix=/usr' > "libsparsehash.pc".tmp echo 'includedir='`echo '/usr/include' | sed 's@^/usr@${prefix}@'` >> "libsparsehash.pc".tmp echo '' >> "libsparsehash.pc".tmp echo 'Name: sparsehash' >> "libsparsehash.pc".tmp echo 'Version: 2.0.3' >> "libsparsehash.pc".tmp grep '^Summary:' ./packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "libsparsehash.pc".tmp grep '^URL: ' ./packages/rpm/rpm.spec >> "libsparsehash.pc".tmp echo 'Requires:' >> "libsparsehash.pc".tmp echo 'Libs:' >> "libsparsehash.pc".tmp echo 'Cflags: -I${includedir}' >> "libsparsehash.pc".tmp mv -f "libsparsehash.pc".tmp "libsparsehash.pc" g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o template_util_unittest template_util_unittest.o In file included from src/sparsetable_unittest.cc:47: ./src/sparsehash/sparsetable: In member function 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from src/simple_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from ./src/google/sparse_hash_set:34, from src/simple_compat_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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; | ^~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_map:93, from src/time_hash_map.cc:87: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/stl_tree.h:63, from /usr/include/c++/14/map:62, from src/time_hash_map.cc:81: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<4, 4>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<8, 8>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<16, 16>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<256, 256>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/internal/densehashtable.h:101, from ./src/sparsehash/dense_hash_map:104, from src/time_hash_map.cc:86: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:634:9: required from here 634 | ht[1] = 2; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/specfun.h:43, from /usr/include/c++/14/cmath:3898, from /usr/include/c++/14/math.h:36, from src/hashtable_test.cc:49: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/sparsetable:247: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/dense_hash_map:113:7: required from here 113 | class dense_hash_map { | ^~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1706:5: required from 'bool google::sparsetable::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 345 | bool read_metadata(INPUT *fp) { return rep.read_metadata(fp); } | ~~~~~~~~~~~~~~~~~^~~~ src/hashtable_test.cc:1451:3: required from here 1451 | EXPECT_TRUE(ht_in.read_metadata(fp)); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:614:21: required from 'bool google::dense_hashtable::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair p = rep.insert(obj); | ~~~~~~~~~~^~~~~ src/hashtable_test.cc:1903:19: required from here 1903 | ht2["hi"].insert("lo"); | ~~~~~~~~~~~~~~~~^~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'class std::__cxx11::basic_string'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/string:54, from /usr/include/c++/14/bits/locale_classes.h:40, from /usr/include/c++/14/bits/ios_base.h:41, from /usr/include/c++/14/ios:44, from /usr/include/c++/14/ostream:40, from /usr/include/c++/14/iostream:41, from src/hashtable_test.cc:56: /usr/include/c++/14/bits/basic_string.h:86:11: note: 'class std::__cxx11::basic_string' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_test simple_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o time_hash_map time_hash_map-time_hash_map.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j22 check "TESTSUITEFLAGS=-j22 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: libc_allocator_with_realloc_test PASS: template_util_unittest PASS: type_traits_unittest PASS: simple_test PASS: simple_compat_test PASS: sparsetable_unittest PASS: hashtable_test ============================================================================ Testsuite summary for sparsehash 2.0.3 ============================================================================ # TOTAL: 7 # PASS: 7 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ============================================================================ make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot dh_prep rm -f -- debian/libsparsehash-dev.substvars rm -fr -- debian/.debhelper/generated/libsparsehash-dev/ debian/libsparsehash-dev/ debian/tmp/ dh_installdirs install -m0755 -d debian/libsparsehash-dev install -m0755 -d debian/libsparsehash-dev/usr/include debian/libsparsehash-dev/usr/include/google debian/rules override_dh_auto_install make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j22 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 src/google/dense_hash_map src/google/dense_hash_set src/google/sparse_hash_map src/google/sparse_hash_set src/google/sparsetable src/google/template_util.h src/google/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt TODO doc/dense_hash_map.html doc/dense_hash_set.html doc/sparse_hash_map.html doc/sparse_hash_set.html doc/sparsetable.html doc/implementation.html doc/performance.html doc/index.html doc/designstyle.css '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/sparsehash/dense_hash_map src/sparsehash/dense_hash_set src/sparsehash/sparse_hash_map src/sparsehash/sparse_hash_set src/sparsehash/sparsetable src/sparsehash/template_util.h src/sparsehash/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig/libsparsehash.pc | cut -f2 -d' ') ; \ [ "2.0.3" = "$PKG_CONFIG_SCRIPT_VERSION" ] || \ (echo "debian/changelog upstream version '2.0.3' does not match .pc script version '$PKG_CONFIG_SCRIPT_VERSION'"; exit 1) # Fix upstream doc install locations install -d /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_installdocs install -p -m0644 debian/copyright debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/copyright install -m0755 -d debian/libsparsehash-dev/usr/share/doc-base/ install -p -m0644 debian/libsparsehash-dev.doc-base debian/libsparsehash-dev/usr/share/doc-base/libsparsehash-dev.sparsehash dh_installchangelogs install -m0755 -d debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev install -p -m0644 debian/.debhelper/generated/libsparsehash-dev/dh_installchangelogs.dch.trimmed debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog.Debian install -p -m0644 ./ChangeLog debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog dh_perl dh_link dh_strip_nondeterminism dh_compress cd debian/libsparsehash-dev chmod a-x usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian gzip -9nf usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian cd '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 find debian/libsparsehash-dev ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s find debian/libsparsehash-dev/usr/share/doc -type f -a -true -a ! -regex 'debian/libsparsehash-dev/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755 find debian/libsparsehash-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 dh_missing dh_installdeb install -m0755 -d debian/libsparsehash-dev/DEBIAN dh_gencontrol install -m0755 -d debian/libsparsehash-dev/DEBIAN echo misc:Depends= >> debian/libsparsehash-dev.substvars echo misc:Pre-Depends= >> debian/libsparsehash-dev.substvars dpkg-gencontrol -plibsparsehash-dev -ldebian/changelog -Tdebian/libsparsehash-dev.substvars -cdebian/control -Pdebian/libsparsehash-dev chmod 0644 -- debian/libsparsehash-dev/DEBIAN/control chown 0:0 -- debian/libsparsehash-dev/DEBIAN/control dh_md5sums install -m0755 -d debian/libsparsehash-dev/DEBIAN cd debian/libsparsehash-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums chmod 0644 -- debian/libsparsehash-dev/DEBIAN/md5sums chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --build debian/libsparsehash-dev .. dpkg-deb: building package 'libsparsehash-dev' in '../libsparsehash-dev_2.0.3-2_all.deb'. dpkg-genbuildinfo --build=binary -O../sparsehash_2.0.3-2_i386.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/86886 and its subdirectories I: Current time: Thu Dec 25 11:52:39 -12 2025 I: pbuilder-time-stamp: 1766706759 Fri Nov 22 17:29:41 UTC 2024 I: 1st build successful. Starting 2nd build on remote node ionos2-i386.debian.net. Fri Nov 22 17:29:41 UTC 2024 I: Preparing to do remote build '2' on ionos2-i386.debian.net. Fri Nov 22 17:29:41 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos2-i386.debian.net is marked as down. Fri Nov 22 17:29:41 UTC 2024 - checking via ssh if ionos2-i386.debian.net is up. removed '/tmp/read-only-fs-test-FzorIW' ==================================================================================== Fri Nov 22 17:29:42 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos2-i386, called using "2 sparsehash trixie /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY 2.0.3-2" as arguments. Fri Nov 22 17:29:42 UTC 2024 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-ehAwmJBd" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Fri Nov 22 17:29:42 UTC 2024 I: Downloading source for trixie/sparsehash=2.0.3-2 Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (6321 kB/s) Download complete and in download only mode Reading package lists... Need to get 329 kB of source archives. Get:1 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (dsc) [1818 B] Get:2 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (tar) [322 kB] Get:3 http://deb.debian.org/debian trixie/main sparsehash 2.0.3-2 (diff) [4740 B] Fetched 329 kB in 0s (6321 kB/s) Download complete and in download only mode ============================================================================= Re-Building sparsehash in trixie on i386 on ionos2-i386 now. Date: Fri Nov 22 18:29:43 CET 2024 Date UTC: Fri Nov 22 17:29:43 UTC 2024 ============================================================================= ++ mktemp -t pbuilderrc_XXXX --tmpdir=/srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY + local TMPCFG=/srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_PNes + case ${ARCH} in + let NUM_CPU-=3 + case $ARCH in + locale=de_CH + language=de + case "${SUITE}" in + reproducible_buildflags=+all + extra_deb_build_options= + case "${SRCPACKAGE}" in + cat + echo BUILDDIR=/build/reproducible-path + '[' sparsehash = debian-installer -o sparsehash = debian-installer-netboot-images ']' + pbuilder_options=() + local pbuilder_options + DEBBUILDOPTS=-b + BINARYTARGET= + '[' sparsehash = u-boot ']' + case "${SRCPACKAGE}" in + PBUILDERTIMEOUT=24 + local PRESULT=0 + sudo timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_PNes --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc W: /root/.pbuilderrc does not exist I: Logging to b2/build.log I: pbuilder: network access will be disabled during build I: Current time: Sat Nov 23 07:29:43 +14 2024 I: pbuilder-time-stamp: 1732296583 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [sparsehash_2.0.3-2.dsc] I: copying [./sparsehash_2.0.3.orig.tar.gz] I: copying [./sparsehash_2.0.3-2.debian.tar.xz] I: Extracting source gpgv: Signature made Sat Apr 25 03:23:49 2020 gpgv: using RSA key CFD111CC3B6D52C53F047F222CD7785EDDA7B20F gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./sparsehash_2.0.3-2.dsc: no acceptable signature found dpkg-source: info: extracting sparsehash in sparsehash-2.0.3 dpkg-source: info: unpacking sparsehash_2.0.3.orig.tar.gz dpkg-source: info: unpacking sparsehash_2.0.3-2.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 00_adjust_upstream_build.patch I: using fakeroot in build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D01_modify_environment starting debug: Running on ionos2-i386. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 Nov 22 17:29 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") BASH_VERSION='5.2.32(1)-release' BUILDDIR=/build/reproducible-path BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=i386 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 ' DIRSTACK=() DISTRIBUTION=trixie EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=i686 HOST_ARCH=i386 IFS=' ' INVOCATION_ID=8f3ed23da48c4412bf4ca89d11f1ce2b LANG=C LANGUAGE=de_CH:de LC_ALL=C LD_LIBRARY_PATH=/usr/lib/libeatmydata LD_PRELOAD=libeatmydata.so MACHTYPE=i686-pc-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=35493 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_PNes --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc' SUDO_GID=112 SUDO_UID=107 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' http_proxy=http://46.16.76.132:3128 I: uname -a Linux i-capture-the-hostname 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper (>= 10) dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper (>= 10); however: Package debhelper is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian trixie/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian trixie/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian trixie/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian trixie/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian trixie/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian trixie/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian trixie/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian trixie/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian trixie/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian trixie/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian trixie/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian trixie/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian trixie/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian trixie/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian trixie/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian trixie/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian trixie/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian trixie/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian trixie/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian trixie/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian trixie/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian trixie/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian trixie/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian trixie/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian trixie/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian trixie/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian trixie/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian trixie/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian trixie/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (71.0 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19956 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps Reading package lists... Building dependency tree... Reading state information... fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package I: user script /srv/workspace/pbuilder/35493/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for trixie I: user script /srv/workspace/pbuilder/35493/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes dpkg-buildpackage: info: source package sparsehash dpkg-buildpackage: info: source version 2.0.3-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Roberto C. Sanchez dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore fakeroot 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 build dh build dh_update_autotools_config cp -an --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 -an --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 configure.ac:12: warning: 'AM_CONFIG_HEADER': this macro is obsolete. configure.ac:12: You should use the 'AC_CONFIG_HEADERS' macro instead. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:745: 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:663: 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:72: 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:2918: 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:270: AC_LANG_CPLUSPLUS is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:2845: AC_TRY_COMPILE is expanded from... lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:697: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: 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:270: 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:2845: 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:270: 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:2845: 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 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 incompatibilities. 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' 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=i686-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/i386-linux-gnu --libexecdir=\${prefix}/lib/i386-linux-gnu --disable-maintainer-mode --disable-dependency-tracking checking for a BSD-compatible install... /usr/bin/install -c 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 for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C++... yes checking whether g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking whether make supports the include directive... yes (GNU style) checking dependency style of g++... none checking for gcc... gcc checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking how to run the C preprocessor... 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... checking how to include hash_fun directly... 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 -j10 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -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 '/build/reproducible-path/sparsehash-2.0.3' 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o template_util_unittest.o `test -f 'src/template_util_unittest.cc' || echo './'`src/template_util_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o type_traits_unittest.o `test -f 'src/type_traits_unittest.cc' || echo './'`src/type_traits_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -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 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o sparsetable_unittest.o `test -f 'src/sparsetable_unittest.cc' || echo './'`src/sparsetable_unittest.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o hashtable_test.o `test -f 'src/hashtable_test.cc' || echo './'`src/hashtable_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_test.o `test -f 'src/simple_test.cc' || echo './'`src/simple_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o simple_compat_test.o `test -f 'src/simple_compat_test.cc' || echo './'`src/simple_compat_test.cc 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=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -c -o time_hash_map-time_hash_map.o `test -f 'src/time_hash_map.cc' || echo './'`src/time_hash_map.cc echo 'prefix=/usr' > "libsparsehash.pc".tmp echo 'includedir='`echo '/usr/include' | sed 's@^/usr@${prefix}@'` >> "libsparsehash.pc".tmp echo '' >> "libsparsehash.pc".tmp echo 'Name: sparsehash' >> "libsparsehash.pc".tmp echo 'Version: 2.0.3' >> "libsparsehash.pc".tmp grep '^Summary:' ./packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "libsparsehash.pc".tmp grep '^URL: ' ./packages/rpm/rpm.spec >> "libsparsehash.pc".tmp echo 'Requires:' >> "libsparsehash.pc".tmp echo 'Libs:' >> "libsparsehash.pc".tmp echo 'Cflags: -I${includedir}' >> "libsparsehash.pc".tmp mv -f "libsparsehash.pc".tmp "libsparsehash.pc" In file included from src/sparsetable_unittest.cc:47: ./src/sparsehash/sparsetable: In member function 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:621:9: note: synthesized method 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)' first required here 621 | y = x; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = int; short unsigned int GROUP_SIZE = 48; Alloc = std::allocator]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:639:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 639 | v = u; | ^ ./src/sparsehash/sparsetable: In member function 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable >::Settings& google::sparsetable >::Settings::operator=(const google::sparsetable >::Settings&)' is deprecated [-Wdeprecated-copy] 1358 | class sparsetable { | ^~~~~~~~~~~ ./src/sparsehash/sparsetable:1798:5: note: because 'google::sparsetable >::Settings' has user-provided 'google::sparsetable::Settings::Settings(const google::sparsetable::Settings&) [with T = std::__cxx11::basic_string; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1798 | Settings(const Settings& s) | ^~~~~~~~ src/sparsetable_unittest.cc: In function 'void TestAllocator()': src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o template_util_unittest template_util_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from src/simple_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from ./src/google/sparse_hash_set:34, from src/simple_compat_test.cc:40: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/algorithm:60, from ./src/sparsehash/sparse_hash_set:92: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/simple_compat_test.cc:74:11: required from here 74 | smap[i] = i+1; | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ 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++; } | ^~~~~~~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_map:93, from src/time_hash_map.cc:87: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/stl_tree.h:63, from /usr/include/c++/14/map:62, from src/time_hash_map.cc:81: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<4, 4>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<4, 4>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<4, 4>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ src/hashtable_test.cc: In instantiation of 'void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 181 | TEST_onetype_##superclass##_##testname 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/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<8, 8>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<8, 8>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<8, 8>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ src/hashtable_test.cc: In instantiation of 'void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' 171 | Run(); \ | ^~~ src/hashtable_test.cc:571:1: required from here 201 | TEST_onetype_##superclass##_##testname 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/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<16, 16>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<16, 16>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<16, 16>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = unsigned int; const_reference = const std::pair* const, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::sparse_hashtable_iterator* const, int>, HashObject<256, 256>*, HashFn, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey, google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >; const_reference = const std::pair* const, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::DefaultValue; Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; value_type = std::pair* const, int>; key_type = HashObject<256, 256>*]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; data_type = int; key_type = HashObject<256, 256>*]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:633:12: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 633 | set[reinterpret_cast(key)] | ~~~^ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from ./src/sparsehash/internal/densehashtable.h:101, from ./src/sparsehash/dense_hash_map:104, from src/time_hash_map.cc:86: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<4, 4>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<8, 8>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<16, 16>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair, int>; pointer = std::pair, int>*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair, int>; T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; pointer = std::pair, int>*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = short unsigned int; const_reference = const std::pair, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; reference = std::pair, int>&; size_type = unsigned int; const_reference = const std::pair, int>&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::sparse_hashtable_iterator, int>, HashObject<256, 256>, HashFn, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey, google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey, std::equal_to >, google::libc_allocator_with_realloc, int> > >; const_reference = const std::pair, int>&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair, int>'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<4, 4>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<4, 4>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<4, 4>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<4, 4>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<8, 8>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<8, 8>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<8, 8>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<8, 8>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<16, 16>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<16, 16>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<16, 16>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<16, 16>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; iterator = google::table_iterator, int>, 48, google::libc_allocator_with_realloc, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::DefaultValue; Value = std::pair, int>; Key = HashObject<256, 256>; HashFcn = HashFn; ExtractKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SelectKey; SetKey = google::sparse_hash_map, int, HashFn, std::equal_to >, google::libc_allocator_with_realloc, int> > >::SetKey; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; value_type = std::pair, int>; key_type = HashObject<256, 256>]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = HashObject<256, 256>; T = int; HashFcn = HashFn; EqualKey = std::equal_to >; Alloc = google::libc_allocator_with_realloc, int> >; data_type = int; key_type = HashObject<256, 256>]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/time_hash_map.cc:434:8: required from 'void time_map_grow(int) [with MapType = EasyUseSparseHashMap, int, HashFn>]' 434 | set[i] = i+1; | ~~~^ src/time_hash_map.cc:658:32: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 658 | if (1) time_map_grow(iters); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<4, 4>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<4, 4>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<4, 4>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:721:60: required from here 721 | if (FLAGS_test_4_bytes) test_all_maps< HashObject<4,4> >(4, iters/1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<8, 8>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<8, 8>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<8, 8>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:722:60: required from here 722 | if (FLAGS_test_8_bytes) test_all_maps< HashObject<8,8> >(8, iters/2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<16, 16>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<16, 16>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<16, 16>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:723:63: required from here 723 | if (FLAGS_test_16_bytes) test_all_maps< HashObject<16,16> >(16, iters/4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; iterator = google::table_iterator* const, int>, 48, google::libc_allocator_with_realloc* const, int> > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair* const, int>; Key = HashObject<256, 256>*; HashFcn = HashFn; ExtractKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SelectKey; SetKey = google::sparse_hash_map*, int, HashFn, std::equal_to*>, google::libc_allocator_with_realloc* const, int> > >::SetKey; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ] ./src/sparsehash/sparse_hash_map:235:51: required from 'void google::sparse_hash_map::resize(size_type) [with Key = HashObject<256, 256>*; T = int; HashFcn = HashFn; EqualKey = std::equal_to*>; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = unsigned int]' 235 | void resize(size_type hint) { rep.resize(hint); } | ~~~~~~~~~~^~~~~~ src/time_hash_map.cc:620:15: required from 'void stresshashfunction(int, int, int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 620 | set.resize(map_size); | ~~~~~~~~~~^~~~~~~~~~ src/time_hash_map.cc:649:34: required from 'void stresshashfunction(int) [with MapType = EasyUseSparseHashMap*, int, HashFn>]' 649 | stresshashfunction(num_inserts, map_size, stride); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:673:38: required from 'void measure_map(const char*, int, int, bool) [with MapType = EasyUseSparseHashMap, int, HashFn>; StressMapType = EasyUseSparseHashMap*, int, HashFn>]' 673 | stresshashfunction(iters / 4); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ src/time_hash_map.cc:683:63: required from 'void test_all_maps(int, int) [with ObjType = HashObject<256, 256>]' 682 | measure_map< EasyUseSparseHashMap, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 683 | EasyUseSparseHashMap >( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 684 | "SPARSE_HASH_MAP", obj_size, iters, stress_hash_function); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/time_hash_map.cc:724:66: required from here 724 | if (FLAGS_test_256_bytes) test_all_maps< HashObject<256,256> >(256, iters/32); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair* const, int>' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ In file included from src/hashtable_test.cc:62: ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, std::hash, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, std::equal_to, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >; data_type = int; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:634:9: required from here 634 | ht[1] = 2; | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/bits/stl_algobase.h:64, from /usr/include/c++/14/bits/specfun.h:43, from /usr/include/c++/14/cmath:3898, from /usr/include/c++/14/math.h:36, from src/hashtable_test.cc:49: /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1091:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1091 | memcpy(group + i, group + i-1, sizeof(*group)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_test simple_test.o In file included from ./src/sparsehash/sparsetable:247: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/dense_hash_map:113:7: required from here 113 | class dense_hash_map { | ^~~~~~~~~~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair >'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair >' declared here 284 | struct pair | ^~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1706:5: required from 'bool google::sparsetable::read_metadata(INPUT*) [with INPUT = _IO_FILE; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >]' 1706 | resize(settings.table_size); // so the vector's sized ok | ^~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1114:44: required from 'bool google::sparse_hashtable::read_metadata(INPUT*) [with INPUT = _IO_FILE; Value = std::pair; Key = int; HashFcn = std::hash; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 1114 | const bool result = table.read_metadata(fp); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparse_hash_map:345:67: required from 'bool google::sparse_hash_map::read_metadata(INPUT*) [with INPUT = _IO_FILE; Key = int; T = int; HashFcn = std::hash; EqualKey = std::equal_to; Alloc = google::libc_allocator_with_realloc >]' 345 | bool read_metadata(INPUT *fp) { return rep.read_metadata(fp); } | ~~~~~~~~~~~~~~~~~^~~~ src/hashtable_test.cc:1451:3: required from here 1451 | EXPECT_TRUE(ht_in.read_metadata(fp)); | ~~~~~~~~~~~~~~~~~~~^~~~ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair; pointer = std::pair*; size_type = unsigned int]': ./src/sparsehash/sparsetable:1316:40: required from 'google::sparsegroup::alloc_impl >::pointer google::sparsegroup::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair; T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; pointer = std::pair*; size_type = unsigned int]' 1316 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/sparsetable:1087:36: required from 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]' 1087 | group = settings.realloc_or_die(group, settings.num_buckets+1); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = short unsigned int; const_reference = const std::pair&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1608:42: required from 'google::sparsetable::reference google::sparsetable::set(size_type, const_reference) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; reference = std::pair&; size_type = unsigned int; const_reference = const std::pair&]' 1608 | reference retval = which_group(i).set(pos_in_group(i), val); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:935:14: required from 'google::sparse_hashtable::iterator google::sparse_hashtable::insert_at(const_reference, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; iterator = google::sparse_hashtable_iterator, int, {anonymous}::Hasher, google::sparse_hash_map::SelectKey, google::sparse_hash_map::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; const_reference = const std::pair&; size_type = unsigned int]' 935 | table.set(pos, obj); | ~~~~~~~~~^~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:1005:15: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1005 | return *insert_at(default_value(key), pos.second); | ^~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'struct std::pair'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_compat_test simple_compat_test.o ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); | ~~~~~~~~~~~~~~~~^~~~~~~~ ./src/sparsehash/internal/densehashtable.h:622:36: required from 'void google::dense_hashtable::resize_table(size_type, size_type, google::true_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int; google::true_type = google::integral_constant]' 622 | table = val_info.realloc_or_die(table, new_size); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:779:21: required from 'void google::dense_hashtable::clear_to_size(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 779 | resize_table(num_buckets, new_num_buckets, realloc_ok()); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:632:5: required from 'void google::dense_hashtable::copy_from(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 632 | clear_to_size(settings.min_buckets(ht.size(), min_buckets_wanted)); | ^~~~~~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:723:5: required from 'google::dense_hashtable::dense_hashtable(const google::dense_hashtable&, size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 723 | copy_from(ht, min_buckets_wanted); // copy_from() ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/densehashtable.h:614:21: required from 'bool google::dense_hashtable::resize_delta(size_type) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 614 | dense_hashtable tmp(*this, resize_to); | ^~~ ./src/sparsehash/internal/densehashtable.h:967:5: required from 'std::pair, bool> google::dense_hashtable::insert(const_reference) [with Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; const_reference = const std::__cxx11::basic_string&]' 967 | resize_delta(1); // adding an object, grow if need be | ^~~~~~~~~~~~ ./src/sparsehash/dense_hash_set:255:58: required from 'std::pair::Identity, google::dense_hash_set::SetKey, EqualKey, Alloc>::const_iterator, bool> google::dense_hash_set::insert(const value_type&) [with Value = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; typename google::dense_hashtable::const_iterator = google::dense_hashtable_const_iterator, std::__cxx11::basic_string, {anonymous}::Hasher, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity, google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey, {anonymous}::Hasher, google::libc_allocator_with_realloc > >; value_type = std::__cxx11::basic_string]' 255 | std::pair p = rep.insert(obj); | ~~~~~~~~~~^~~~~ src/hashtable_test.cc:1903:19: required from here 1903 | ht2["hi"].insert("lo"); | ~~~~~~~~~~~~~~~~^~~~~~ ./src/sparsehash/internal/libc_allocator_with_realloc.h:68:40: warning: 'void* realloc(void*, size_t)' moving an object of non-trivially copyable type 'class std::__cxx11::basic_string'; use 'new' and 'delete' instead [-Wclass-memaccess] 68 | return static_cast(realloc(p, n * sizeof(value_type))); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/14/string:54, from /usr/include/c++/14/bits/locale_classes.h:40, from /usr/include/c++/14/bits/ios_base.h:41, from /usr/include/c++/14/ios:44, from /usr/include/c++/14/ostream:40, from /usr/include/c++/14/iostream:41, from src/hashtable_test.cc:56: /usr/include/c++/14/bits/basic_string.h:86:11: note: 'class std::__cxx11::basic_string' declared here 86 | class basic_string | ^~~~~~~~~~~~ ./src/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::erase_aux(size_type, google::true_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1192:18: required from 'void google::sparsegroup::erase(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = short unsigned int]' 1192 | erase_aux(offset, realloc_and_memmove_ok()); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/sparsetable:1200:10: required from 'void google::sparsegroup::erase(iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1200 | erase(pos.pos); | ~~~~~^~~~~~~~~ ./src/sparsehash/sparsetable:1207:12: required from 'void google::sparsegroup::erase(iterator, iterator) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; iterator = google::table_iterator, 48, google::libc_allocator_with_realloc > > >]' 1207 | erase(start_it); | ~~~~~^~~~~~~~~~ ./src/sparsehash/sparsetable:1517:28: required from 'void google::sparsetable::resize(size_type) [with T = std::pair; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 1517 | groups.back().erase(groups.back().begin() + pos_in_group(new_size), | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1518 | groups.back().end()); | ~~~~~~~~~~~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:706:19: required from 'void google::sparse_hashtable::move_from(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 706 | table.resize(resize_to); // sets the number of buckets | ~~~~~~~~~~~~^~~~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:797:5: required from 'google::sparse_hashtable::sparse_hashtable(MoveDontCopyT, google::sparse_hashtable&, size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 797 | move_from(mover, ht, min_buckets_wanted); // ignores deleted entries | ^~~~~~~~~ ./src/sparsehash/internal/sparsehashtable.h:655:22: required from 'bool google::sparse_hashtable::resize_delta(size_type) [with Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; size_type = unsigned int]' 655 | sparse_hashtable tmp(MoveDontCopy, *this, resize_to); | ^~~ ./src/sparsehash/internal/sparsehashtable.h:1001:16: required from 'google::sparse_hashtable::value_type& google::sparse_hashtable::find_or_insert(const key_type&) [with DefaultValue = google::sparse_hash_map::DefaultValue; Value = std::pair; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::sparse_hash_map::SelectKey; SetKey = google::sparse_hash_map::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; value_type = std::pair; key_type = int]' 1001 | } else if (resize_delta(1)) { // needed to rehash to make room | ^~~~~~~~~~~~ ./src/sparsehash/sparse_hash_map:246:53: required from 'google::sparse_hash_map::data_type& google::sparse_hash_map::operator[](const key_type&) [with Key = int; T = {anonymous}::Memmove; HashFcn = {anonymous}::Hasher; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; data_type = {anonymous}::Memmove; key_type = int]' 246 | return rep.template find_or_insert(key).second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ src/hashtable_test.cc:1777:14: required from here 1777 | memmove[i] = Memmove(i); | ^ ./src/sparsehash/sparsetable:1157:13: warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'struct std::pair' with no trivial copy-assignment; use copy-initialization instead [-Wclass-memaccess] 1157 | memcpy(group + i, group + i+1, sizeof(*group)); // hopefully inlined! | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o time_hash_map time_hash_map-time_hash_map.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test make -j10 check "TESTSUITEFLAGS=-j10 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make all-am make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' PASS: type_traits_unittest PASS: template_util_unittest PASS: libc_allocator_with_realloc_test PASS: simple_test PASS: simple_compat_test PASS: sparsetable_unittest PASS: hashtable_test ============================================================================ Testsuite summary for sparsehash 2.0.3 ============================================================================ # TOTAL: 7 # PASS: 7 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ============================================================================ make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary dh binary dh_testroot dh_prep rm -f -- debian/libsparsehash-dev.substvars rm -fr -- debian/.debhelper/generated/libsparsehash-dev/ debian/libsparsehash-dev/ debian/tmp/ dh_installdirs install -m0755 -d debian/libsparsehash-dev install -m0755 -d debian/libsparsehash-dev/usr/include debian/libsparsehash-dev/usr/include/google debian/rules override_dh_auto_install make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev make -j10 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/google/dense_hash_map src/google/dense_hash_set src/google/sparse_hash_map src/google/sparse_hash_set src/google/sparsetable src/google/template_util.h src/google/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt TODO doc/dense_hash_map.html doc/dense_hash_set.html doc/sparse_hash_map.html doc/sparse_hash_set.html doc/sparsetable.html doc/implementation.html doc/performance.html doc/index.html doc/designstyle.css '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/sparsehash/dense_hash_map src/sparsehash/dense_hash_set src/sparsehash/sparse_hash_map src/sparsehash/sparse_hash_set src/sparsehash/sparsetable src/sparsehash/template_util.h src/sparsehash/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' make[4]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[3]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' # Check to make sure pkg-config script version matches actual package version export PKG_CONFIG_SCRIPT_VERSION=$(grep '^Version: ' /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig/libsparsehash.pc | cut -f2 -d' ') ; \ [ "2.0.3" = "$PKG_CONFIG_SCRIPT_VERSION" ] || \ (echo "debian/changelog upstream version '2.0.3' does not match .pc script version '$PKG_CONFIG_SCRIPT_VERSION'"; exit 1) # Fix upstream doc install locations install -d /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.html /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ mv /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/*.css /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/html/ rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/ChangeLog rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/COPYING rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/INSTALL rm -f /build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/README_windows.txt make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_installdocs install -p -m0644 debian/copyright debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/copyright install -m0755 -d debian/libsparsehash-dev/usr/share/doc-base/ install -p -m0644 debian/libsparsehash-dev.doc-base debian/libsparsehash-dev/usr/share/doc-base/libsparsehash-dev.sparsehash dh_installchangelogs install -m0755 -d debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev install -p -m0644 debian/.debhelper/generated/libsparsehash-dev/dh_installchangelogs.dch.trimmed debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog.Debian install -p -m0644 ./ChangeLog debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev/changelog dh_perl dh_link dh_strip_nondeterminism dh_compress cd debian/libsparsehash-dev chmod a-x usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian gzip -9nf usr/share/doc/libsparsehash-dev/NEWS usr/share/doc/libsparsehash-dev/README usr/share/doc/libsparsehash-dev/changelog usr/share/doc/libsparsehash-dev/changelog.Debian cd '/build/reproducible-path/sparsehash-2.0.3' dh_fixperms find debian/libsparsehash-dev -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 find debian/libsparsehash-dev ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s find debian/libsparsehash-dev/usr/share/doc -type f -a -true -a ! -regex 'debian/libsparsehash-dev/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755 find debian/libsparsehash-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 find debian/libsparsehash-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 dh_missing dh_installdeb install -m0755 -d debian/libsparsehash-dev/DEBIAN dh_gencontrol install -m0755 -d debian/libsparsehash-dev/DEBIAN echo misc:Depends= >> debian/libsparsehash-dev.substvars echo misc:Pre-Depends= >> debian/libsparsehash-dev.substvars dpkg-gencontrol -plibsparsehash-dev -ldebian/changelog -Tdebian/libsparsehash-dev.substvars -cdebian/control -Pdebian/libsparsehash-dev chmod 0644 -- debian/libsparsehash-dev/DEBIAN/control chown 0:0 -- debian/libsparsehash-dev/DEBIAN/control dh_md5sums install -m0755 -d debian/libsparsehash-dev/DEBIAN cd debian/libsparsehash-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums chmod 0644 -- debian/libsparsehash-dev/DEBIAN/md5sums chown 0:0 -- debian/libsparsehash-dev/DEBIAN/md5sums dh_builddeb dpkg-deb --build debian/libsparsehash-dev .. dpkg-deb: building package 'libsparsehash-dev' in '../libsparsehash-dev_2.0.3-2_all.deb'. dpkg-genbuildinfo --build=binary -O../sparsehash_2.0.3-2_i386.buildinfo dpkg-genchanges --build=binary -O../sparsehash_2.0.3-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-source: info: using options from sparsehash-2.0.3/debian/source/options: --diff-ignore --tar-ignore dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/35493/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/35493/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/35493 and its subdirectories I: Current time: Sat Nov 23 07:32:36 +14 2024 I: pbuilder-time-stamp: 1732296756 + false + set +x Fri Nov 22 17:32:36 UTC 2024 I: Signing ./b2/sparsehash_2.0.3-2_i386.buildinfo as sparsehash_2.0.3-2_i386.buildinfo.asc Fri Nov 22 17:32:36 UTC 2024 I: Signed ./b2/sparsehash_2.0.3-2_i386.buildinfo as ./b2/sparsehash_2.0.3-2_i386.buildinfo.asc Fri Nov 22 17:32:36 UTC 2024 - build #2 for sparsehash/trixie/i386 on ionos2-i386 done. Starting cleanup. All cleanup done. Fri Nov 22 17:32:36 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-ehAwmJBd, removing. /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY: total 284 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 17:29 b1 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 17:32 b2 -rw------- 1 jenkins jenkins 272921 Nov 22 17:29 rbuildlog.LyqN9By -rw-r--r-- 1 jenkins jenkins 1818 Apr 25 2020 sparsehash_2.0.3-2.dsc /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1: total 384 -rw-r--r-- 1 jenkins jenkins 269707 Nov 22 17:29 build.log -rw-r--r-- 1 jenkins jenkins 75920 Nov 22 17:29 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Nov 22 17:29 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Nov 22 17:29 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4652 Nov 22 17:29 sparsehash_2.0.3-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5534 Nov 22 17:29 sparsehash_2.0.3-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1092 Nov 22 17:29 sparsehash_2.0.3-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1209 Nov 22 17:29 sparsehash_2.0.3-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2: total 380 -rw-r--r-- 1 jenkins jenkins 271613 Nov 22 17:32 build.log -rw-r--r-- 1 jenkins jenkins 75920 Nov 22 17:32 libsparsehash-dev_2.0.3-2_all.deb -rw-r--r-- 1 jenkins jenkins 4740 Nov 22 17:32 sparsehash_2.0.3-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 1818 Nov 22 17:32 sparsehash_2.0.3-2.dsc -rw-r--r-- 1 jenkins jenkins 4652 Nov 22 17:32 sparsehash_2.0.3-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5534 Nov 22 17:32 sparsehash_2.0.3-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1092 Nov 22 17:32 sparsehash_2.0.3-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1209 Nov 22 17:32 sparsehash_2.0.3-2_source.changes Fri Nov 22 17:32:36 UTC 2024 I: Deleting $TMPDIR on ionos2-i386.debian.net. Fri Nov 22 17:32:37 UTC 2024 I: sparsehash_2.0.3-2_i386.changes: Format: 1.8 Date: Fri, 24 Apr 2020 23:16:17 -0400 Source: sparsehash Binary: libsparsehash-dev Architecture: all Version: 2.0.3-2 Distribution: unstable Urgency: medium Maintainer: Athena Capital Research Changed-By: Roberto C. Sanchez Description: libsparsehash-dev - Google's extremely memory-efficient C++ hash_map implementation Changes: sparsehash (2.0.3-2) unstable; urgency=medium . * Update to Standards-Version 4.5.0 (no changes) Checksums-Sha1: cf5860b8455c715dc93bbd67f94eeb834852bd92 75920 libsparsehash-dev_2.0.3-2_all.deb 2be9a277f1b5876116216c954212fc37d6be53c6 4652 sparsehash_2.0.3-2_i386.buildinfo Checksums-Sha256: 3f26eea01f370f133fe2fccb3715c209f058f734587578192798cb9f59c3abec 75920 libsparsehash-dev_2.0.3-2_all.deb d1286c03a6e5b443860e4ae041ba03abb40dfefbf9c3b137b68472157a872e57 4652 sparsehash_2.0.3-2_i386.buildinfo Files: 026cbb770736909305fb71b588c6fe2f 75920 libdevel optional libsparsehash-dev_2.0.3-2_all.deb 8f35ff3960d13f31673a0836e5baeedf 4652 libdevel optional sparsehash_2.0.3-2_i386.buildinfo removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/trixie/i386/sparsehash_2.0.3-2.rbuild.log' removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/trixie/i386/sparsehash_2.0.3-2.rbuild.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/trixie/i386/sparsehash_2.0.3-2.build1.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/trixie/i386/sparsehash_2.0.3-2.build2.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/buildinfo/trixie/i386/sparsehash_2.0.3-2_i386.buildinfo' removed '/var/lib/jenkins/userContent/reproducible/debian/logdiffs/trixie/i386/sparsehash_2.0.3-2.diff.gz' Diff of the two buildlogs: -- --- b1/build.log 2024-11-22 17:29:41.129147859 +0000 +++ b2/build.log 2024-11-22 17:32:36.657197072 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Dec 25 11:50:20 -12 2025 -I: pbuilder-time-stamp: 1766706620 +I: Current time: Sat Nov 23 07:29:43 +14 2024 +I: pbuilder-time-stamp: 1732296583 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -28,54 +28,86 @@ dpkg-source: info: applying 00_adjust_upstream_build.patch I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D01_modify_environment starting +debug: Running on ionos2-i386. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Nov 22 17:29 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='db2e731cbdc84679aace7f89d8eb94a3' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='86886' - PS1='# ' - PS2='> ' + INVOCATION_ID=8f3ed23da48c4412bf4ca89d11f1ce2b + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=35493 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_pAck --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1 --logfile b1/build.log sparsehash_2.0.3-2.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/pbuilderrc_PNes --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2 --logfile b2/build.log sparsehash_2.0.3-2.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos6-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/86886/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -140,7 +172,7 @@ Get: 27 http://deb.debian.org/debian trixie/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian trixie/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian trixie/main i386 debhelper all 13.20 [915 kB] -Fetched 20.1 MB in 0s (80.9 MB/s) +Fetched 20.1 MB in 0s (71.0 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19956 files and directories currently installed.) @@ -276,7 +308,11 @@ fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/sparsehash-2.0.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../sparsehash_2.0.3-2_source.changes dpkg-buildpackage: info: source package sparsehash dpkg-buildpackage: info: source version 2.0.3-2 dpkg-buildpackage: info: source distribution unstable @@ -458,7 +494,7 @@ config.status: creating src/config.h config.status: executing depfiles commands dh_auto_build - make -j22 + make -j10 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' [ -d src/sparsehash/internal ] || mkdir -p src/sparsehash/internal echo "/*" > src/sparsehash/internal/_sparsehash_config @@ -498,7 +534,6 @@ echo 'Libs:' >> "libsparsehash.pc".tmp echo 'Cflags: -I${includedir}' >> "libsparsehash.pc".tmp mv -f "libsparsehash.pc".tmp "libsparsehash.pc" -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o template_util_unittest template_util_unittest.o In file included from src/sparsetable_unittest.cc:47: ./src/sparsehash/sparsetable: In member function 'google::sparsetable& google::sparsetable::operator=(const google::sparsetable&)': ./src/sparsehash/sparsetable:1358:7: warning: implicitly-declared 'constexpr google::sparsetable::Settings& google::sparsetable::Settings::operator=(const google::sparsetable::Settings&)' is deprecated [-Wdeprecated-copy] @@ -533,8 +568,8 @@ src/sparsetable_unittest.cc:657:9: note: synthesized method 'google::sparsetable >& google::sparsetable >::operator=(const google::sparsetable >&)' first required here 657 | b = a; | ^ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o template_util_unittest template_util_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o type_traits_unittest type_traits_unittest.o -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from src/simple_test.cc:40: @@ -605,6 +640,7 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o libc_allocator_with_realloc_test libc_allocator_with_realloc_test.o In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_set:97, from ./src/google/sparse_hash_set:34, @@ -695,84 +731,6 @@ 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::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 181 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': -src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' - 171 | Run(); \ - | ^~~ -src/hashtable_test.cc:571:1: required from here - 201 | TEST_onetype_##superclass##_##testname 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; - | ^~ In file included from ./src/sparsehash/internal/sparsehashtable.h:106, from ./src/sparsehash/sparse_hash_map:93, from src/time_hash_map.cc:87: @@ -973,6 +931,19 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ +src/hashtable_test.cc: In instantiation of 'void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs::Run() [with TypeParam = google::HashtableInterface_SparseHashMap >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashMap >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 181 | TEST_onetype_##superclass##_##testname 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/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); @@ -1014,6 +985,71 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair* const, int>' declared here 284 | struct pair | ^~~~ +src/hashtable_test.cc: In instantiation of 'void {anonymous}::TEST_onetype_HashtableIntTest_Typedefs::Run() [with TypeParam = google::HashtableInterface_SparseHashSet >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashSet >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 185 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_SparseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 189 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashMap >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashMap >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 193 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashSet >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashSet >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 197 | TEST_onetype_##superclass##_##testname 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::Run() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]': +src/hashtable_test.cc:571:1: required from '{anonymous}::TEST_onetype_HashtableIntTest_Typedefs::TEST_onetype_HashtableIntTest_Typedefs() [with TypeParam = google::HashtableInterface_DenseHashtable, {anonymous}::SetKey >, {anonymous}::Hasher, {anonymous}::Alloc >]' + 171 | Run(); \ + | ^~~ +src/hashtable_test.cc:571:1: required from here + 201 | TEST_onetype_##superclass##_##testname 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/sparsehash/sparsetable: In instantiation of 'void google::sparsegroup::set_aux(size_type, google::true_type) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; size_type = short unsigned int; google::true_type = google::integral_constant]': ./src/sparsehash/sparsetable:1123:14: required from 'google::sparsegroup::reference google::sparsegroup::set(size_type, const_reference) [with T = std::pair* const, int>; short unsigned int GROUP_SIZE = 48; Alloc = google::libc_allocator_with_realloc* const, int> >; reference = std::pair* const, int>&; size_type = short unsigned int; const_reference = const std::pair* const, int>&]' 1123 | set_aux(offset, realloc_and_memmove_ok()); @@ -1707,6 +1743,7 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_test simple_test.o In file included from ./src/sparsehash/sparsetable:247: ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::pair >; pointer = std::pair >*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::pair >; Value = std::pair >; Key = int; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SelectKey; SetKey = google::dense_hash_map, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc > >; pointer = std::pair >*; size_type = unsigned int]' @@ -1797,6 +1834,7 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ +g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_compat_test simple_compat_test.o ./src/sparsehash/internal/libc_allocator_with_realloc.h: In instantiation of 'T* google::libc_allocator_with_realloc::reallocate(pointer, size_type) [with T = std::__cxx11::basic_string; pointer = std::__cxx11::basic_string*; size_type = unsigned int]': ./src/sparsehash/internal/densehashtable.h:1196:40: required from 'google::dense_hashtable::alloc_impl >::pointer google::dense_hashtable::alloc_impl >::realloc_or_die(pointer, size_type) [with A = std::__cxx11::basic_string; Value = std::__cxx11::basic_string; Key = std::__cxx11::basic_string; HashFcn = {anonymous}::Hasher; ExtractKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::Identity; SetKey = google::dense_hash_set, {anonymous}::Hasher, {anonymous}::Hasher>::SetKey; EqualKey = {anonymous}::Hasher; Alloc = google::libc_allocator_with_realloc >; pointer = std::__cxx11::basic_string*; size_type = unsigned int]' 1196 | pointer retval = this->reallocate(ptr, n); @@ -1877,15 +1915,13 @@ /usr/include/c++/14/bits/stl_pair.h:284:12: note: 'struct std::pair' declared here 284 | struct pair | ^~~~ -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_test simple_test.o -g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o simple_compat_test simple_compat_test.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o sparsetable_unittest sparsetable_unittest.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o time_hash_map time_hash_map-time_hash_map.o g++ -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow -g -O2 -ffile-prefix-map=/build/reproducible-path/sparsehash-2.0.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -o hashtable_test hashtable_test.o make[2]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' make[1]: Leaving directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_test - make -j22 check "TESTSUITEFLAGS=-j22 --verbose" VERBOSE=1 + make -j10 check "TESTSUITEFLAGS=-j10 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make check-am make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' @@ -1898,9 +1934,9 @@ make check-TESTS make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make[4]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' -PASS: libc_allocator_with_realloc_test -PASS: template_util_unittest PASS: type_traits_unittest +PASS: template_util_unittest +PASS: libc_allocator_with_realloc_test PASS: simple_test PASS: simple_compat_test PASS: sparsetable_unittest @@ -1934,7 +1970,7 @@ make[1]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' dh_auto_install install -m0755 -d debian/libsparsehash-dev - make -j22 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no + make -j10 install DESTDIR=/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' make install-am make[3]: Entering directory '/build/reproducible-path/sparsehash-2.0.3' @@ -1943,13 +1979,13 @@ /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' + /usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' + /usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/google/dense_hash_map src/google/dense_hash_set src/google/sparse_hash_map src/google/sparse_hash_set src/google/sparsetable src/google/template_util.h src/google/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' - /usr/bin/install -c -m 644 src/google/sparsehash/densehashtable.h src/google/sparsehash/sparsehashtable.h src/google/sparsehash/hashtable-common.h src/google/sparsehash/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/google/sparsehash' - /usr/bin/install -c -m 644 src/sparsehash/internal/densehashtable.h src/sparsehash/internal/sparsehashtable.h src/sparsehash/internal/hashtable-common.h src/sparsehash/internal/libc_allocator_with_realloc.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' - /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/install -c -m 644 AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt TODO doc/dense_hash_map.html doc/dense_hash_set.html doc/sparse_hash_map.html doc/sparse_hash_set.html doc/sparsetable.html doc/implementation.html doc/performance.html doc/index.html doc/designstyle.css '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/doc/libsparsehash-dev' + /usr/bin/install -c -m 644 libsparsehash.pc '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/share/pkgconfig' /usr/bin/mkdir -p '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' /usr/bin/install -c -m 644 src/sparsehash/dense_hash_map src/sparsehash/dense_hash_set src/sparsehash/sparse_hash_map src/sparsehash/sparse_hash_set src/sparsehash/sparsetable src/sparsehash/template_util.h src/sparsehash/type_traits.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash' /usr/bin/install -c -m 644 src/sparsehash/internal/sparseconfig.h '/build/reproducible-path/sparsehash-2.0.3/debian/libsparsehash-dev/usr/include/sparsehash/internal' @@ -2018,12 +2054,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/35493/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/86886 and its subdirectories -I: Current time: Thu Dec 25 11:52:39 -12 2025 -I: pbuilder-time-stamp: 1766706759 +I: removing directory /srv/workspace/pbuilder/35493 and its subdirectories +I: Current time: Sat Nov 23 07:32:36 +14 2024 +I: pbuilder-time-stamp: 1732296756 Compressing the 2nd log... /var/lib/jenkins/userContent/reproducible/debian/logdiffs/trixie/i386/sparsehash_2.0.3-2.diff: 84.8% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/logdiffs/trixie/i386/sparsehash_2.0.3-2.diff.gz b2/build.log: 92.3% -- replaced with stdout Compressing the 1st log... b1/build.log: 92.6% -- replaced with stdout Fri Nov 22 17:32:38 UTC 2024 I: diffoscope 283 will be used to compare the two builds: ++ date -u +%s + DIFFOSCOPE_STAMP=/var/log/reproducible-builds/diffoscope_stamp_sparsehash_trixie_i386_1732296758 + touch /var/log/reproducible-builds/diffoscope_stamp_sparsehash_trixie_i386_1732296758 + RESULT=0 + systemd-run '--description=diffoscope on sparsehash/2.0.3-2 in trixie/i386' --slice=rb-build-diffoscope.slice -u rb-diffoscope-i386_11-33983 '--property=SuccessExitStatus=1 124' --user --send-sighup --pipe --wait -E TMPDIR timeout 155m nice schroot --directory /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY --run-session -c jenkins-reproducible-trixie-diffoscope-02436e6c-48c0-4805-bce9-15dc8e5bef28 -- sh -c 'export TMPDIR=/srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/dbd-tmp-R1ihGO1 ; timeout 150m diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1/sparsehash_2.0.3-2_i386.changes /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2/sparsehash_2.0.3-2_i386.changes' + false + set +x Running as unit: rb-diffoscope-i386_11-33983.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/sparsehash_2.0.3-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b1/sparsehash_2.0.3-2_i386.changes /srv/reproducible-results/rbuild-debian/r-b-build.wCMJa1MY/b2/sparsehash_2.0.3-2_i386.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call abc.DotChangesFile ## main (total time: 0.377s) 0.377s 2 calls outputs 0.000s 1 call cleanup ## recognizes (total time: 0.015s) 0.015s 12 calls diffoscope.comparators.binary.FilesystemFile ## specialize (total time: 0.000s) 0.000s 1 call specialize Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 813ms CPU time consumed: 786ms _ _ ___ _ __ __ _ _ __ ___ ___| |__ __ _ ___| |__ / __| '_ \ / _` | '__/ __|/ _ \ '_ \ / _` / __| '_ \ \__ \ |_) | (_| | | \__ \ __/ | | | (_| \__ \ | | | |___/ .__/ \__,_|_| |___/\___|_| |_|\__,_|___/_| |_| |_| Fri Nov 22 17:32:39 UTC 2024 I: diffoscope 283 found no differences in the changes files, and a .buildinfo file also exists. Fri Nov 22 17:32:39 UTC 2024 I: sparsehash from trixie built successfully and reproducibly on i386. INSERT 0 1 INSERT 0 1 DELETE 1 [2024-11-22 17:32:40] INFO: Starting at 2024-11-22 17:32:40.216636 [2024-11-22 17:32:40] INFO: Generating the pages of 1 package(s) [2024-11-22 17:32:40] CRITICAL: https://tests.reproducible-builds.org/debian/trixie/i386/sparsehash didn't produce a buildlog, even though it has been built. [2024-11-22 17:32:40] INFO: Finished at 2024-11-22 17:32:40.685733, took: 0:00:00.469103 Fri Nov 22 17:32:40 UTC 2024 - successfully updated the database and updated https://tests.reproducible-builds.org/debian/rb-pkg/trixie/i386/sparsehash.html Fri Nov 22 17:32:40 UTC 2024 I: Submitting .buildinfo files to external archives: Fri Nov 22 17:32:40 UTC 2024 I: Submitting 8.0K b1/sparsehash_2.0.3-2_i386.buildinfo.asc https://buildinfo.debian.net/2be9a277f1b5876116216c954212fc37d6be53c6/sparsehash_2.0.3-2_all Fri Nov 22 17:32:42 UTC 2024 I: Submitting 8.0K b2/sparsehash_2.0.3-2_i386.buildinfo.asc https://buildinfo.debian.net/fab2a400ee5a65c68d651d473de38514eb039dcf/sparsehash_2.0.3-2_all Fri Nov 22 17:32:43 UTC 2024 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Fri Nov 22 17:32:43 UTC 2024 I: Done submitting .buildinfo files. Fri Nov 22 17:32:43 UTC 2024 I: Removing signed sparsehash_2.0.3-2_i386.buildinfo.asc files: removed './b1/sparsehash_2.0.3-2_i386.buildinfo.asc' removed './b2/sparsehash_2.0.3-2_i386.buildinfo.asc' 1732296763 i386 trixie sparsehash Starting cleanup. /var/lib/jenkins/userContent/reproducible/debian/rbuild/trixie/i386/sparsehash_2.0.3-2.rbuild.log: 91.8% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/rbuild/trixie/i386/sparsehash_2.0.3-2.rbuild.log.gz [2024-11-22 17:32:43] INFO: Starting at 2024-11-22 17:32:43.931063 [2024-11-22 17:32:43] INFO: Generating the pages of 1 package(s) [2024-11-22 17:32:44] INFO: Finished at 2024-11-22 17:32:44.438241, took: 0:00:00.507186 All cleanup done. Fri Nov 22 17:32:44 UTC 2024 - total duration: 0h 5m 39s. Fri Nov 22 17:32:44 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-9uGzjmzN, removing. Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 5min 43.885s CPU time consumed: 7.504s