Fri Mar 7 13:47:55 UTC 2025 I: starting to build xenium/trixie/amd64 on jenkins on '2025-03-07 13:47' Fri Mar 7 13:47:55 UTC 2025 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/amd64_35/50087/console.log Fri Mar 7 13:47:55 UTC 2025 I: Downloading source for trixie/xenium=0.0.2+ds-8 --2025-03-07 13:47:55-- http://deb.debian.org/debian/pool/main/x/xenium/xenium_0.0.2%2bds-8.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 2109 (2.1K) [text/prs.lines.tag] Saving to: ‘xenium_0.0.2+ds-8.dsc’ 0K .. 100% 348M=0s 2025-03-07 13:47:55 (348 MB/s) - ‘xenium_0.0.2+ds-8.dsc’ saved [2109/2109] Fri Mar 7 13:47:55 UTC 2025 I: xenium_0.0.2+ds-8.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: xenium Binary: libxenium-dev, libxenium-doc Architecture: any-amd64 all Version: 0.0.2+ds-8 Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org> Uploaders: Steffen Moeller <moeller@debian.org> Homepage: https://github.com/mpoeter/xenium/ Standards-Version: 4.6.1 Vcs-Browser: https://salsa.debian.org/med-team/xenium Vcs-Git: https://salsa.debian.org/med-team/xenium.git Build-Depends: debhelper-compat (= 13), libboost-dev, tao-json-dev, tao-config-dev, cmake, doxygen, googletest <!nocheck> Package-List: libxenium-dev deb libdevel optional arch=any-amd64 libxenium-doc deb doc optional arch=all Checksums-Sha1: 75e95327716e57ecce81fbd8e9977e34c4a6fa49 117032 xenium_0.0.2+ds.orig.tar.xz cab4116b16962be0cbd8b0b228151a80bf83962f 5628 xenium_0.0.2+ds-8.debian.tar.xz Checksums-Sha256: a85b4fa84b873bd96b73201b2d50e8ef35b433855c59116462f2e6b0b3d22ac4 117032 xenium_0.0.2+ds.orig.tar.xz 1c6b7c93802572c1446db5eb5cef5dd1879c4cdab36eb1c7993b202bdbb2d42f 5628 xenium_0.0.2+ds-8.debian.tar.xz Files: b3b408c157025ce25f44a5c07d3e167a 117032 xenium_0.0.2+ds.orig.tar.xz 39c1ac846fbe6410bc43fc35e5e5b62d 5628 xenium_0.0.2+ds-8.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQJFBAEBCgAvFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAmOPlSMRHHRpbGxlQGRl Ymlhbi5vcmcACgkQV4oElNHGRtFFnBAAiCuxRSAfVhgYmQgg3xonkW6TK5excgMt 5o8GrjjSMEHHlq93IAOpd2MIdi2ebqDqZ1xIRLFpv2GpgzUECxASNLQb/J5UrVxH KGcYL43kzeiEvwsbF5hzGjHI8inukWpXcRiOiLFj9jKmKaIEXwg+ejgSiAk5DNxC 5rBrV+j1nEJUrL/UBEdbTOE4tLNlBhlu159y0887U3myesZ7oWLjukWAPP1qGXII 07CLrUDR8kseTYnJUu4k6iEYGjoITKrUeWsB2ZUbVKW7Nq7PnqW8c7gCqOIfFdZu L3WYjVEkEVrlPz+6wFKS9ma3iskCouUdvJK/fcL67Vnpj2dT0jYQe3ScnTLLYKiK tQgD8a626EtPjGyo0SMSZPK/0ZtdwF+y2goL+olanHk0jocmBcVm1gasLICocGly HeRdgVvWus/JeiQrHAHyWXiLwuBnqh7FCrW9WyDzmHVbtKc1/l4tXNWd6N0U2GQC WGTiLSQHPRAWteQf14VC3sJfP5UQLOFOiggyCfdjFtye4UfL4+qx/wmpLg+RNweM AbU3fP9R1XGKJEPGETG2xayMOcoqRxAEpGdWEoVcmk1ZolE6p+O2mhAQYtXQNf4p NP1R6gnPakGuoHZsdRQeKZIk7+kX0don6cBMpP4aE5cE6D4e5UFVsKYH4CxB/GqO O23BWcAMcaY= =IUs6 -----END PGP SIGNATURE----- Fri Mar 7 13:47:55 UTC 2025 I: Checking whether the package is not for us Fri Mar 7 13:47:55 UTC 2025 I: Starting 1st build on remote node infom01-amd64.debian.net. Fri Mar 7 13:47:55 UTC 2025 I: Preparing to do remote build '1' on infom01-amd64.debian.net. Fri Mar 7 13:52:27 UTC 2025 I: Deleting $TMPDIR on infom01-amd64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Fri Mar 7 01:47:57 -12 2025 I: pbuilder-time-stamp: 1741355277 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: Copying source file I: copying [xenium_0.0.2+ds-8.dsc] I: copying [./xenium_0.0.2+ds.orig.tar.xz] I: copying [./xenium_0.0.2+ds-8.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./xenium_0.0.2+ds-8.dsc: unsupported subcommand dpkg-source: info: extracting xenium in xenium-0.0.2+ds dpkg-source: info: unpacking xenium_0.0.2+ds.orig.tar.xz dpkg-source: info: unpacking xenium_0.0.2+ds-8.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying detect-thread-sanitizer.patch dpkg-source: info: applying AdjustCMake.patch dpkg-source: info: applying remove-privacy-breach.patch dpkg-source: info: applying fix-gcc11-FTBFS.patch dpkg-source: info: applying no-Werror.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/3103631/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='amd64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' DISTRIBUTION='trixie' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='f9ffc4d8c2ed484fa6f02579a1b835cb' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' 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='3103631' 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.OH2e4Dbj/pbuilderrc_6XiQ --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.OH2e4Dbj/b1 --logfile b1/build.log xenium_0.0.2+ds-8.dsc' SUDO_GID='109' SUDO_UID='104' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' I: uname -a Linux infom01-amd64 6.1.0-31-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin I: user script /srv/workspace/pbuilder/3103631/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: amd64 Maintainer: Debian Pbuilder Team <pbuilder-maint@lists.alioth.debian.org> 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-compat (= 13), libboost-dev, tao-json-dev, tao-config-dev, cmake, doxygen, googletest dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19800 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-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on libboost-dev; however: Package libboost-dev is not installed. pbuilder-satisfydepends-dummy depends on tao-json-dev; however: Package tao-json-dev is not installed. pbuilder-satisfydepends-dummy depends on tao-config-dev; however: Package tao-config-dev is not installed. pbuilder-satisfydepends-dummy depends on cmake; however: Package cmake is not installed. pbuilder-satisfydepends-dummy depends on doxygen; however: Package doxygen is not installed. pbuilder-satisfydepends-dummy depends on googletest; however: Package googletest 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} cmake{a} cmake-data{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} doxygen{a} dwz{a} file{a} gettext{a} gettext-base{a} googletest{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libarchive13t64{a} libboost-dev{a} libboost1.83-dev{a} libbrotli1{a} libclang-cpp19{a} libclang1-19{a} libcom-err2{a} libcurl4t64{a} libdebhelper-perl{a} libedit2{a} libelf1t64{a} libexpat1{a} libffi8{a} libfile-stripnondeterminism-perl{a} libfmt10{a} libgnutls30t64{a} libgssapi-krb5-2{a} libicu72{a} libidn2-0{a} libjsoncpp26{a} libk5crypto3{a} libkeyutils1{a} libkrb5-3{a} libkrb5support0{a} libldap2{a} libllvm19{a} libmagic-mgc{a} libmagic1t64{a} libnghttp2-14{a} libnghttp3-9{a} libp11-kit0{a} libpipeline1{a} libproc2-0{a} libpsl5t64{a} librhash1{a} librtmp1{a} libsasl2-2{a} libsasl2-modules-db{a} libssh2-1t64{a} libtasn1-6{a} libtool{a} libuchardet0{a} libunistring5{a} libuv1t64{a} libxml2{a} libz3-4{a} m4{a} man-db{a} po-debconf{a} procps{a} sensible-utils{a} tao-config-dev{a} tao-json-dev{a} The following packages are RECOMMENDED but will NOT be installed: ca-certificates curl krb5-locales libarchive-cpio-perl libldap-common libltdl-dev libmail-sendmail-perl libsasl2-modules linux-sysctl-defaults lynx psmisc publicsuffix wget 0 packages upgraded, 72 newly installed, 0 to remove and 0 not upgraded. Need to get 113 MB of archives. After unpacking 603 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian trixie/main amd64 libproc2-0 amd64 2:4.0.4-7 [64.9 kB] Get: 2 http://deb.debian.org/debian trixie/main amd64 procps amd64 2:4.0.4-7 [878 kB] Get: 3 http://deb.debian.org/debian trixie/main amd64 sensible-utils all 0.0.24 [24.8 kB] Get: 4 http://deb.debian.org/debian trixie/main amd64 libmagic-mgc amd64 1:5.45-3+b1 [314 kB] Get: 5 http://deb.debian.org/debian trixie/main amd64 libmagic1t64 amd64 1:5.45-3+b1 [108 kB] Get: 6 http://deb.debian.org/debian trixie/main amd64 file amd64 1:5.45-3+b1 [43.3 kB] Get: 7 http://deb.debian.org/debian trixie/main amd64 gettext-base amd64 0.23.1-1 [243 kB] Get: 8 http://deb.debian.org/debian trixie/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 9 http://deb.debian.org/debian trixie/main amd64 groff-base amd64 1.23.0-7 [1185 kB] Get: 10 http://deb.debian.org/debian trixie/main amd64 bsdextrautils amd64 2.40.4-5 [92.4 kB] Get: 11 http://deb.debian.org/debian trixie/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 12 http://deb.debian.org/debian trixie/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 13 http://deb.debian.org/debian trixie/main amd64 m4 amd64 1.4.19-5 [294 kB] Get: 14 http://deb.debian.org/debian trixie/main amd64 autoconf all 2.72-3 [493 kB] Get: 15 http://deb.debian.org/debian trixie/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 16 http://deb.debian.org/debian trixie/main amd64 automake all 1:1.17-3 [862 kB] Get: 17 http://deb.debian.org/debian trixie/main amd64 autopoint all 0.23.1-1 [770 kB] Get: 18 http://deb.debian.org/debian trixie/main amd64 cmake-data all 3.31.6-1 [2268 kB] Get: 19 http://deb.debian.org/debian trixie/main amd64 libicu72 amd64 72.1-6 [9421 kB] Get: 20 http://deb.debian.org/debian trixie/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.2+b2 [699 kB] Get: 21 http://deb.debian.org/debian trixie/main amd64 libarchive13t64 amd64 3.7.4-1.1 [349 kB] Get: 22 http://deb.debian.org/debian trixie/main amd64 libbrotli1 amd64 1.1.0-2+b7 [307 kB] Get: 23 http://deb.debian.org/debian trixie/main amd64 libkrb5support0 amd64 1.21.3-4 [32.8 kB] Get: 24 http://deb.debian.org/debian trixie/main amd64 libcom-err2 amd64 1.47.2-1 [24.0 kB] Get: 25 http://deb.debian.org/debian trixie/main amd64 libk5crypto3 amd64 1.21.3-4 [80.9 kB] Get: 26 http://deb.debian.org/debian trixie/main amd64 libkeyutils1 amd64 1.6.3-4 [9092 B] Get: 27 http://deb.debian.org/debian trixie/main amd64 libkrb5-3 amd64 1.21.3-4 [326 kB] Get: 28 http://deb.debian.org/debian trixie/main amd64 libgssapi-krb5-2 amd64 1.21.3-4 [138 kB] Get: 29 http://deb.debian.org/debian trixie/main amd64 libunistring5 amd64 1.3-1 [476 kB] Get: 30 http://deb.debian.org/debian trixie/main amd64 libidn2-0 amd64 2.3.7-2+b1 [129 kB] Get: 31 http://deb.debian.org/debian trixie/main amd64 libsasl2-modules-db amd64 2.1.28+dfsg1-9 [19.8 kB] Get: 32 http://deb.debian.org/debian trixie/main amd64 libsasl2-2 amd64 2.1.28+dfsg1-9 [57.5 kB] Get: 33 http://deb.debian.org/debian trixie/main amd64 libldap2 amd64 2.6.9+dfsg-1 [192 kB] Get: 34 http://deb.debian.org/debian trixie/main amd64 libnghttp2-14 amd64 1.64.0-1 [75.5 kB] Get: 35 http://deb.debian.org/debian trixie/main amd64 libnghttp3-9 amd64 1.8.0-1 [67.7 kB] Get: 36 http://deb.debian.org/debian trixie/main amd64 libpsl5t64 amd64 0.21.2-1.1+b1 [57.2 kB] Get: 37 http://deb.debian.org/debian trixie/main amd64 libffi8 amd64 3.4.7-1 [23.9 kB] Get: 38 http://deb.debian.org/debian trixie/main amd64 libp11-kit0 amd64 0.25.5-3 [425 kB] Get: 39 http://deb.debian.org/debian trixie/main amd64 libtasn1-6 amd64 4.20.0-2 [49.9 kB] Get: 40 http://deb.debian.org/debian trixie/main amd64 libgnutls30t64 amd64 3.8.9-2 [1464 kB] Get: 41 http://deb.debian.org/debian trixie/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-2+b5 [58.8 kB] Get: 42 http://deb.debian.org/debian trixie/main amd64 libssh2-1t64 amd64 1.11.1-1 [245 kB] Get: 43 http://deb.debian.org/debian trixie/main amd64 libcurl4t64 amd64 8.12.1-3 [369 kB] Get: 44 http://deb.debian.org/debian trixie/main amd64 libexpat1 amd64 2.6.4-1 [106 kB] Get: 45 http://deb.debian.org/debian trixie/main amd64 libjsoncpp26 amd64 1.9.6-3 [81.7 kB] Get: 46 http://deb.debian.org/debian trixie/main amd64 librhash1 amd64 1.4.5-1 [132 kB] Get: 47 http://deb.debian.org/debian trixie/main amd64 libuv1t64 amd64 1.50.0-2 [154 kB] Get: 48 http://deb.debian.org/debian trixie/main amd64 cmake amd64 3.31.6-1 [12.0 MB] Get: 49 http://deb.debian.org/debian trixie/main amd64 libdebhelper-perl all 13.24.1 [90.9 kB] Get: 50 http://deb.debian.org/debian trixie/main amd64 libtool all 2.5.4-3 [539 kB] Get: 51 http://deb.debian.org/debian trixie/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 52 http://deb.debian.org/debian trixie/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 53 http://deb.debian.org/debian trixie/main amd64 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB] Get: 54 http://deb.debian.org/debian trixie/main amd64 dh-strip-nondeterminism all 1.14.1-2 [8620 B] Get: 55 http://deb.debian.org/debian trixie/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 56 http://deb.debian.org/debian trixie/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 57 http://deb.debian.org/debian trixie/main amd64 gettext amd64 0.23.1-1 [1680 kB] Get: 58 http://deb.debian.org/debian trixie/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 59 http://deb.debian.org/debian trixie/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 60 http://deb.debian.org/debian trixie/main amd64 debhelper all 13.24.1 [920 kB] Get: 61 http://deb.debian.org/debian trixie/main amd64 libedit2 amd64 3.1-20250104-1 [93.8 kB] Get: 62 http://deb.debian.org/debian trixie/main amd64 libz3-4 amd64 4.13.3-1 [8560 kB] Get: 63 http://deb.debian.org/debian trixie/main amd64 libllvm19 amd64 1:19.1.7-1+b1 [26.0 MB] Get: 64 http://deb.debian.org/debian trixie/main amd64 libclang-cpp19 amd64 1:19.1.7-1+b1 [13.2 MB] Get: 65 http://deb.debian.org/debian trixie/main amd64 libclang1-19 amd64 1:19.1.7-1+b1 [7614 kB] Get: 66 http://deb.debian.org/debian trixie/main amd64 libfmt10 amd64 10.1.1+ds1-4 [127 kB] Get: 67 http://deb.debian.org/debian trixie/main amd64 doxygen amd64 1.9.8+ds-2.1 [5017 kB] Get: 68 http://deb.debian.org/debian trixie/main amd64 googletest all 1.16.0-1 [517 kB] Get: 69 http://deb.debian.org/debian trixie/main amd64 libboost1.83-dev amd64 1.83.0-4.1 [10.6 MB] Get: 70 http://deb.debian.org/debian trixie/main amd64 libboost-dev amd64 1.83.0.2+b2 [3836 B] Get: 71 http://deb.debian.org/debian trixie/main amd64 tao-json-dev all 0.0+git20200604.f357d72-2 [145 kB] Get: 72 http://deb.debian.org/debian trixie/main amd64 tao-config-dev all 0.0+git20200604.84a7383-2 [32.9 kB] Fetched 113 MB in 5s (21.1 MB/s) Preconfiguring packages ... Selecting previously unselected package libproc2-0:amd64. (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 ... 19800 files and directories currently installed.) Preparing to unpack .../00-libproc2-0_2%3a4.0.4-7_amd64.deb ... Unpacking libproc2-0:amd64 (2:4.0.4-7) ... Selecting previously unselected package procps. Preparing to unpack .../01-procps_2%3a4.0.4-7_amd64.deb ... Unpacking procps (2:4.0.4-7) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../02-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../03-libmagic-mgc_1%3a5.45-3+b1_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../04-libmagic1t64_1%3a5.45-3+b1_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../05-file_1%3a5.45-3+b1_amd64.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../06-gettext-base_0.23.1-1_amd64.deb ... Unpacking gettext-base (0.23.1-1) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../07-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../08-groff-base_1.23.0-7_amd64.deb ... Unpacking groff-base (1.23.0-7) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../09-bsdextrautils_2.40.4-5_amd64.deb ... Unpacking bsdextrautils (2.40.4-5) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../10-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../11-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../12-m4_1.4.19-5_amd64.deb ... Unpacking m4 (1.4.19-5) ... Selecting previously unselected package autoconf. Preparing to unpack .../13-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../14-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../15-automake_1%3a1.17-3_all.deb ... Unpacking automake (1:1.17-3) ... Selecting previously unselected package autopoint. Preparing to unpack .../16-autopoint_0.23.1-1_all.deb ... Unpacking autopoint (0.23.1-1) ... Selecting previously unselected package cmake-data. Preparing to unpack .../17-cmake-data_3.31.6-1_all.deb ... Unpacking cmake-data (3.31.6-1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../18-libicu72_72.1-6_amd64.deb ... Unpacking libicu72:amd64 (72.1-6) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../19-libxml2_2.12.7+dfsg+really2.9.14-0.2+b2_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2+b2) ... Selecting previously unselected package libarchive13t64:amd64. Preparing to unpack .../20-libarchive13t64_3.7.4-1.1_amd64.deb ... Unpacking libarchive13t64:amd64 (3.7.4-1.1) ... Selecting previously unselected package libbrotli1:amd64. Preparing to unpack .../21-libbrotli1_1.1.0-2+b7_amd64.deb ... Unpacking libbrotli1:amd64 (1.1.0-2+b7) ... Selecting previously unselected package libkrb5support0:amd64. Preparing to unpack .../22-libkrb5support0_1.21.3-4_amd64.deb ... Unpacking libkrb5support0:amd64 (1.21.3-4) ... Selecting previously unselected package libcom-err2:amd64. Preparing to unpack .../23-libcom-err2_1.47.2-1_amd64.deb ... Unpacking libcom-err2:amd64 (1.47.2-1) ... Selecting previously unselected package libk5crypto3:amd64. Preparing to unpack .../24-libk5crypto3_1.21.3-4_amd64.deb ... Unpacking libk5crypto3:amd64 (1.21.3-4) ... Selecting previously unselected package libkeyutils1:amd64. Preparing to unpack .../25-libkeyutils1_1.6.3-4_amd64.deb ... Unpacking libkeyutils1:amd64 (1.6.3-4) ... Selecting previously unselected package libkrb5-3:amd64. Preparing to unpack .../26-libkrb5-3_1.21.3-4_amd64.deb ... Unpacking libkrb5-3:amd64 (1.21.3-4) ... Selecting previously unselected package libgssapi-krb5-2:amd64. Preparing to unpack .../27-libgssapi-krb5-2_1.21.3-4_amd64.deb ... Unpacking libgssapi-krb5-2:amd64 (1.21.3-4) ... Selecting previously unselected package libunistring5:amd64. Preparing to unpack .../28-libunistring5_1.3-1_amd64.deb ... Unpacking libunistring5:amd64 (1.3-1) ... Selecting previously unselected package libidn2-0:amd64. Preparing to unpack .../29-libidn2-0_2.3.7-2+b1_amd64.deb ... Unpacking libidn2-0:amd64 (2.3.7-2+b1) ... Selecting previously unselected package libsasl2-modules-db:amd64. Preparing to unpack .../30-libsasl2-modules-db_2.1.28+dfsg1-9_amd64.deb ... Unpacking libsasl2-modules-db:amd64 (2.1.28+dfsg1-9) ... Selecting previously unselected package libsasl2-2:amd64. Preparing to unpack .../31-libsasl2-2_2.1.28+dfsg1-9_amd64.deb ... Unpacking libsasl2-2:amd64 (2.1.28+dfsg1-9) ... Selecting previously unselected package libldap2:amd64. Preparing to unpack .../32-libldap2_2.6.9+dfsg-1_amd64.deb ... Unpacking libldap2:amd64 (2.6.9+dfsg-1) ... Selecting previously unselected package libnghttp2-14:amd64. Preparing to unpack .../33-libnghttp2-14_1.64.0-1_amd64.deb ... Unpacking libnghttp2-14:amd64 (1.64.0-1) ... Selecting previously unselected package libnghttp3-9:amd64. Preparing to unpack .../34-libnghttp3-9_1.8.0-1_amd64.deb ... Unpacking libnghttp3-9:amd64 (1.8.0-1) ... Selecting previously unselected package libpsl5t64:amd64. Preparing to unpack .../35-libpsl5t64_0.21.2-1.1+b1_amd64.deb ... Unpacking libpsl5t64:amd64 (0.21.2-1.1+b1) ... Selecting previously unselected package libffi8:amd64. Preparing to unpack .../36-libffi8_3.4.7-1_amd64.deb ... Unpacking libffi8:amd64 (3.4.7-1) ... Selecting previously unselected package libp11-kit0:amd64. Preparing to unpack .../37-libp11-kit0_0.25.5-3_amd64.deb ... Unpacking libp11-kit0:amd64 (0.25.5-3) ... Selecting previously unselected package libtasn1-6:amd64. Preparing to unpack .../38-libtasn1-6_4.20.0-2_amd64.deb ... Unpacking libtasn1-6:amd64 (4.20.0-2) ... Selecting previously unselected package libgnutls30t64:amd64. Preparing to unpack .../39-libgnutls30t64_3.8.9-2_amd64.deb ... Unpacking libgnutls30t64:amd64 (3.8.9-2) ... Selecting previously unselected package librtmp1:amd64. Preparing to unpack .../40-librtmp1_2.4+20151223.gitfa8646d.1-2+b5_amd64.deb ... Unpacking librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b5) ... Selecting previously unselected package libssh2-1t64:amd64. Preparing to unpack .../41-libssh2-1t64_1.11.1-1_amd64.deb ... Unpacking libssh2-1t64:amd64 (1.11.1-1) ... Selecting previously unselected package libcurl4t64:amd64. Preparing to unpack .../42-libcurl4t64_8.12.1-3_amd64.deb ... Unpacking libcurl4t64:amd64 (8.12.1-3) ... Selecting previously unselected package libexpat1:amd64. Preparing to unpack .../43-libexpat1_2.6.4-1_amd64.deb ... Unpacking libexpat1:amd64 (2.6.4-1) ... Selecting previously unselected package libjsoncpp26:amd64. Preparing to unpack .../44-libjsoncpp26_1.9.6-3_amd64.deb ... Unpacking libjsoncpp26:amd64 (1.9.6-3) ... Selecting previously unselected package librhash1:amd64. Preparing to unpack .../45-librhash1_1.4.5-1_amd64.deb ... Unpacking librhash1:amd64 (1.4.5-1) ... Selecting previously unselected package libuv1t64:amd64. Preparing to unpack .../46-libuv1t64_1.50.0-2_amd64.deb ... Unpacking libuv1t64:amd64 (1.50.0-2) ... Selecting previously unselected package cmake. Preparing to unpack .../47-cmake_3.31.6-1_amd64.deb ... Unpacking cmake (3.31.6-1) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../48-libdebhelper-perl_13.24.1_all.deb ... Unpacking libdebhelper-perl (13.24.1) ... Selecting previously unselected package libtool. Preparing to unpack .../49-libtool_2.5.4-3_all.deb ... Unpacking libtool (2.5.4-3) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../50-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../51-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 .../52-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../53-dh-strip-nondeterminism_1.14.1-2_all.deb ... Unpacking dh-strip-nondeterminism (1.14.1-2) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../54-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../55-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../56-gettext_0.23.1-1_amd64.deb ... Unpacking gettext (0.23.1-1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../57-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 .../58-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../59-debhelper_13.24.1_all.deb ... Unpacking debhelper (13.24.1) ... Selecting previously unselected package libedit2:amd64. Preparing to unpack .../60-libedit2_3.1-20250104-1_amd64.deb ... Unpacking libedit2:amd64 (3.1-20250104-1) ... Selecting previously unselected package libz3-4:amd64. Preparing to unpack .../61-libz3-4_4.13.3-1_amd64.deb ... Unpacking libz3-4:amd64 (4.13.3-1) ... Selecting previously unselected package libllvm19:amd64. Preparing to unpack .../62-libllvm19_1%3a19.1.7-1+b1_amd64.deb ... Unpacking libllvm19:amd64 (1:19.1.7-1+b1) ... Selecting previously unselected package libclang-cpp19. Preparing to unpack .../63-libclang-cpp19_1%3a19.1.7-1+b1_amd64.deb ... Unpacking libclang-cpp19 (1:19.1.7-1+b1) ... Selecting previously unselected package libclang1-19. Preparing to unpack .../64-libclang1-19_1%3a19.1.7-1+b1_amd64.deb ... Unpacking libclang1-19 (1:19.1.7-1+b1) ... Selecting previously unselected package libfmt10:amd64. Preparing to unpack .../65-libfmt10_10.1.1+ds1-4_amd64.deb ... Unpacking libfmt10:amd64 (10.1.1+ds1-4) ... Selecting previously unselected package doxygen. Preparing to unpack .../66-doxygen_1.9.8+ds-2.1_amd64.deb ... Unpacking doxygen (1.9.8+ds-2.1) ... Selecting previously unselected package googletest. Preparing to unpack .../67-googletest_1.16.0-1_all.deb ... Unpacking googletest (1.16.0-1) ... Selecting previously unselected package libboost1.83-dev:amd64. Preparing to unpack .../68-libboost1.83-dev_1.83.0-4.1_amd64.deb ... Unpacking libboost1.83-dev:amd64 (1.83.0-4.1) ... Selecting previously unselected package libboost-dev:amd64. Preparing to unpack .../69-libboost-dev_1.83.0.2+b2_amd64.deb ... Unpacking libboost-dev:amd64 (1.83.0.2+b2) ... Selecting previously unselected package tao-json-dev. Preparing to unpack .../70-tao-json-dev_0.0+git20200604.f357d72-2_all.deb ... Unpacking tao-json-dev (0.0+git20200604.f357d72-2) ... Selecting previously unselected package tao-config-dev. Preparing to unpack .../71-tao-config-dev_0.0+git20200604.84a7383-2_all.deb ... Unpacking tao-config-dev (0.0+git20200604.84a7383-2) ... Setting up libexpat1:amd64 (2.6.4-1) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libkeyutils1:amd64 (1.6.3-4) ... Setting up libboost1.83-dev:amd64 (1.83.0-4.1) ... Setting up libicu72:amd64 (72.1-6) ... Setting up bsdextrautils (2.40.4-5) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.24.1) ... Setting up libbrotli1:amd64 (1.1.0-2+b7) ... Setting up libedit2:amd64 (3.1-20250104-1) ... Setting up libuv1t64:amd64 (1.50.0-2) ... Setting up libmagic1t64:amd64 (1:5.45-3+b1) ... Setting up libnghttp2-14:amd64 (1.64.0-1) ... Setting up gettext-base (0.23.1-1) ... Setting up m4 (1.4.19-5) ... Setting up libcom-err2:amd64 (1.47.2-1) ... Setting up file (1:5.45-3+b1) ... Setting up googletest (1.16.0-1) ... Setting up tao-json-dev (0.0+git20200604.f357d72-2) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up libkrb5support0:amd64 (1.21.3-4) ... Setting up libsasl2-modules-db:amd64 (2.1.28+dfsg1-9) ... Setting up tao-config-dev (0.0+git20200604.84a7383-2) ... Setting up autotools-dev (20220109.1) ... Setting up libz3-4:amd64 (4.13.3-1) ... Setting up libjsoncpp26:amd64 (1.9.6-3) ... Setting up libproc2-0:amd64 (2:4.0.4-7) ... Setting up libunistring5:amd64 (1.3-1) ... Setting up autopoint (0.23.1-1) ... Setting up libk5crypto3:amd64 (1.21.3-4) ... Setting up libsasl2-2:amd64 (2.1.28+dfsg1-9) ... Setting up autoconf (2.72-3) ... Setting up libnghttp3-9:amd64 (1.8.0-1) ... Setting up libffi8:amd64 (3.4.7-1) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up procps (2:4.0.4-7) ... Setting up libtasn1-6:amd64 (4.20.0-2) ... Setting up cmake-data (3.31.6-1) ... Setting up librhash1:amd64 (1.4.5-1) ... Setting up libkrb5-3:amd64 (1.21.3-4) ... Setting up libboost-dev:amd64 (1.83.0.2+b2) ... Setting up libssh2-1t64:amd64 (1.11.1-1) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2+b2) ... Setting up libldap2:amd64 (2.6.9+dfsg-1) ... Setting up libfmt10:amd64 (10.1.1+ds1-4) ... Setting up automake (1:1.17-3) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... Setting up libllvm19:amd64 (1:19.1.7-1+b1) ... Setting up gettext (0.23.1-1) ... Setting up libclang1-19 (1:19.1.7-1+b1) ... Setting up libtool (2.5.4-3) ... Setting up libidn2-0:amd64 (2.3.7-2+b1) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up libp11-kit0:amd64 (0.25.5-3) ... Setting up libgssapi-krb5-2:amd64 (1.21.3-4) ... Setting up dh-strip-nondeterminism (1.14.1-2) ... Setting up groff-base (1.23.0-7) ... Setting up libarchive13t64:amd64 (3.7.4-1.1) ... Setting up libclang-cpp19 (1:19.1.7-1+b1) ... Setting up libgnutls30t64:amd64 (3.8.9-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libpsl5t64:amd64 (0.21.2-1.1+b1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up doxygen (1.9.8+ds-2.1) ... Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b5) ... Setting up libcurl4t64:amd64 (8.12.1-3) ... Setting up debhelper (13.24.1) ... Setting up cmake (3.31.6-1) ... Processing triggers for libc-bin (2.40-7) ... 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 I: Building the package I: Running cd /build/reproducible-path/xenium-0.0.2+ds/ && 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 > ../xenium_0.0.2+ds-8_source.changes dpkg-buildpackage: info: source package xenium dpkg-buildpackage: info: source version 0.0.2+ds-8 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Andreas Tille <tille@debian.org> dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean debian/rules override_dh_auto_clean make[1]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds' dh_auto_clean rm -rf doc/html/ make[1]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds' dh_clean debian/rules binary dh binary dh_update_autotools_config dh_autoreconf debian/rules override_dh_auto_configure make[1]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds' dh_auto_configure -- -DCMAKE_BUILD_TYPE="RelWithDebug" # -DWITH_LIBCDS="1" cd obj-x86_64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb PKG_CONFIG=/usr/bin/pkg-config cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DFETCHCONTENT_FULLY_DISCONNECTED=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON "-GUnix Makefiles" -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu -DCMAKE_BUILD_TYPE=RelWithDebug .. CMake Warning (dev) at CMakeLists.txt:1 (project): cmake_minimum_required() should be called prior to this top-level project() call. Please see the cmake-commands(7) manual for usage documentation of both commands. This warning is for project developers. Use -Wno-dev to suppress it. -- The C compiler identification is GNU 14.2.0 -- The CXX compiler identification is GNU 14.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Deprecation Warning at CMakeLists.txt:2 (cmake_minimum_required): Compatibility with CMake < 3.10 will be removed from a future version of CMake. Update the VERSION argument <min> value. Or, use the <min>...<max> syntax to tell CMake that the project requires at least <min> but has been updated to work with policies introduced by <max> or earlier. -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found Doxygen: /usr/bin/doxygen (found version "1.9.8") found components: doxygen missing components: dot -- Performing Test TSAN_FLAG_WORKS -- Performing Test TSAN_FLAG_WORKS - Success -- Configuring done (2.4s) -- Generating done (0.0s) CMake Warning: Manually-specified variables were not used by the project: CMAKE_EXPORT_NO_PACKAGE_REGISTRY CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_LOCALSTATEDIR CMAKE_INSTALL_RUNSTATEDIR CMAKE_INSTALL_SYSCONFDIR FETCHCONTENT_FULLY_DISCONNECTED -- Build files have been written to: /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu make[1]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds' debian/rules override_dh_auto_build make[1]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds' dh_auto_build cd obj-x86_64-linux-gnu && make -j12 "INSTALL=install --strip-program=true" VERBOSE=1 make[2]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/cmake -S/build/reproducible-path/xenium-0.0.2+ds -B/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 /usr/bin/cmake -E cmake_progress_start /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu//CMakeFiles/progress.marks make -f CMakeFiles/Makefile2 all make[3]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/depend make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make -f CMakeFiles/benchmark.dir/build.make CMakeFiles/benchmark.dir/depend cd /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles/googletest.dir/DependInfo.cmake "--color=" make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' cd /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles/benchmark.dir/DependInfo.cmake "--color=" make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/build make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make -f CMakeFiles/benchmark.dir/build.make CMakeFiles/benchmark.dir/build make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [ 2%] Building CXX object CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest-all.cc.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -MD -MT CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest-all.cc.o -MF CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest-all.cc.o.d -o CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest-all.cc.o -c /usr/src/googletest/googletest/src/gtest-all.cc [ 5%] Building CXX object CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest_main.cc.o [ 8%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/benchmark.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -MD -MT CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest_main.cc.o -MF CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest_main.cc.o.d -o CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest_main.cc.o -c /usr/src/googletest/googletest/src/gtest_main.cc /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/benchmark.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/benchmark.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/benchmark.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/benchmark.cpp [ 11%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/execution.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/execution.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/execution.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/execution.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/execution.cpp [ 14%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/hash_map_benchmark.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/hash_map_benchmark.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/hash_map_benchmark.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/hash_map_benchmark.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp [ 17%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/main.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/main.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/main.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/main.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/main.cpp [ 20%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/queue_benchmark.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/queue_benchmark.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/queue_benchmark.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/queue_benchmark.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp [ 23%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/report.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/report.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/report.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/report.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/report.cpp [ 26%] Building CXX object CMakeFiles/benchmark.dir/benchmarks/workload.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/benchmark.dir/benchmarks/workload.cpp.o -MF CMakeFiles/benchmark.dir/benchmarks/workload.cpp.o.d -o CMakeFiles/benchmark.dir/benchmarks/workload.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/benchmarks/workload.cpp In file included from /usr/include/c++/14/bits/shared_ptr_atomic.h:33, from /usr/include/c++/14/memory:81, from /usr/include/tao/json/basic_value.hpp:11, from /usr/include/tao/json/value.hpp:7, from /usr/include/tao/json.hpp:8, from /usr/include/tao/config/external/json.hpp:7, from /usr/include/tao/config/value.hpp:7, from /build/reproducible-path/xenium-0.0.2+ds/benchmarks/benchmark.hpp:5, from /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/bits/shared_ptr_atomic.h:33, from /usr/include/c++/14/memory:81, from /usr/include/tao/json/basic_value.hpp:11, from /usr/include/tao/json/value.hpp:7, from /usr/include/tao/json.hpp:8, from /usr/include/tao/config/external/json.hpp:7, from /usr/include/tao/config/value.hpp:7, from /build/reproducible-path/xenium-0.0.2+ds/benchmarks/benchmark.hpp:5, from /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:2: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘bool xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:221:39, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::initialize(uint32_t) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp:107:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::run() [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp:128:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 29%] Linking CXX static library libgoogletest.a /usr/bin/cmake -P CMakeFiles/googletest.dir/cmake_clean_target.cmake /usr/bin/cmake -E cmake_link_script CMakeFiles/googletest.dir/link.txt --verbose=1 /usr/bin/ar qc libgoogletest.a "CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest-all.cc.o" CMakeFiles/googletest.dir/usr/src/googletest/googletest/src/gtest_main.cc.o /usr/bin/ranlib libgoogletest.a make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [ 29%] Built target googletest make -f CMakeFiles/gtest.dir/build.make CMakeFiles/gtest.dir/depend In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = unsigned int; Value = unsigned int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' cd /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles/gtest.dir/DependInfo.cmake "--color=" make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make -f CMakeFiles/gtest.dir/build.make CMakeFiles/gtest.dir/build In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::run() [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp:128:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::initialize(uint32_t) [with T = xenium::vyukov_hash_map<unsigned int, unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/hash_map_benchmark.cpp:107:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 32%] Building CXX object CMakeFiles/gtest.dir/test/chase_work_stealing_deque_test.cpp.o [ 35%] Building CXX object CMakeFiles/gtest.dir/test/concurrent_ptr_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/chase_work_stealing_deque_test.cpp.o -MF CMakeFiles/gtest.dir/test/chase_work_stealing_deque_test.cpp.o.d -o CMakeFiles/gtest.dir/test/chase_work_stealing_deque_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/chase_work_stealing_deque_test.cpp [ 38%] Building CXX object CMakeFiles/gtest.dir/test/harris_michael_hash_map_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/concurrent_ptr_test.cpp.o -MF CMakeFiles/gtest.dir/test/concurrent_ptr_test.cpp.o.d -o CMakeFiles/gtest.dir/test/concurrent_ptr_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/concurrent_ptr_test.cpp [ 41%] Building CXX object CMakeFiles/gtest.dir/test/harris_michael_list_based_set_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/harris_michael_hash_map_test.cpp.o -MF CMakeFiles/gtest.dir/test/harris_michael_hash_map_test.cpp.o.d -o CMakeFiles/gtest.dir/test/harris_michael_hash_map_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/harris_michael_list_based_set_test.cpp.o -MF CMakeFiles/gtest.dir/test/harris_michael_list_based_set_test.cpp.o.d -o CMakeFiles/gtest.dir/test/harris_michael_list_based_set_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp [ 44%] Building CXX object CMakeFiles/gtest.dir/test/kirsch_bounded_kfifo_queue_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/kirsch_bounded_kfifo_queue_test.cpp.o -MF CMakeFiles/gtest.dir/test/kirsch_bounded_kfifo_queue_test.cpp.o.d -o CMakeFiles/gtest.dir/test/kirsch_bounded_kfifo_queue_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_bounded_kfifo_queue_test.cpp [ 47%] Building CXX object CMakeFiles/gtest.dir/test/kirsch_kfifo_queue_test.cpp.o [ 50%] Building CXX object CMakeFiles/gtest.dir/test/left_right_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/kirsch_kfifo_queue_test.cpp.o -MF CMakeFiles/gtest.dir/test/kirsch_kfifo_queue_test.cpp.o.d -o CMakeFiles/gtest.dir/test/kirsch_kfifo_queue_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/left_right_test.cpp.o -MF CMakeFiles/gtest.dir/test/left_right_test.cpp.o.d -o CMakeFiles/gtest.dir/test/left_right_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/left_right_test.cpp [ 52%] Building CXX object CMakeFiles/gtest.dir/test/main.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/main.cpp.o -MF CMakeFiles/gtest.dir/test/main.cpp.o.d -o CMakeFiles/gtest.dir/test/main.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/main.cpp [ 55%] Building CXX object CMakeFiles/gtest.dir/test/marked_ptr_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/marked_ptr_test.cpp.o -MF CMakeFiles/gtest.dir/test/marked_ptr_test.cpp.o.d -o CMakeFiles/gtest.dir/test/marked_ptr_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/marked_ptr_test.cpp [ 58%] Building CXX object CMakeFiles/gtest.dir/test/michael_scott_queue_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/michael_scott_queue_test.cpp.o -MF CMakeFiles/gtest.dir/test/michael_scott_queue_test.cpp.o.d -o CMakeFiles/gtest.dir/test/michael_scott_queue_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/michael_scott_queue_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 61%] Building CXX object CMakeFiles/gtest.dir/test/parameter_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/parameter_test.cpp.o -MF CMakeFiles/gtest.dir/test/parameter_test.cpp.o.d -o CMakeFiles/gtest.dir/test/parameter_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/parameter_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 64%] Building CXX object CMakeFiles/gtest.dir/test/ramalhete_queue_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/ramalhete_queue_test.cpp.o -MF CMakeFiles/gtest.dir/test/ramalhete_queue_test.cpp.o.d -o CMakeFiles/gtest.dir/test/ramalhete_queue_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 67%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/generic_epoch_based_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/generic_epoch_based_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/generic_epoch_based_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/generic_epoch_based_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/generic_epoch_based_test.cpp [ 70%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/hazard_eras_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/hazard_eras_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/hazard_eras_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/hazard_eras_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_eras_test.cpp [ 73%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/hazard_pointer_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/hazard_pointer_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/hazard_pointer_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/hazard_pointer_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment, 16, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::initialize(uint32_t) [with T = xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:107:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::run() [with T = xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:124:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 76%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/lock_free_ref_count_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/lock_free_ref_count_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/lock_free_ref_count_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/lock_free_ref_count_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/lock_free_ref_count_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::initialize(uint32_t) [with T = xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:107:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::run() [with T = xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:124:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::initialize(uint32_t) [with T = xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:107:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void benchmark_thread<T>::run() [with T = xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<100, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >]’ at /build/reproducible-path/xenium-0.0.2+ds/benchmarks/queue_benchmark.cpp:124:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 79%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/quiescent_state_based_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/quiescent_state_based_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/quiescent_state_based_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/quiescent_state_based_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/quiescent_state_based_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::dynamic_strategy<3> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<unsigned int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<unsigned int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/quiescent_state_based.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/quiescent_state_based_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/generic_epoch_based.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/generic_epoch_based_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::Foo, 2, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/hazard_pointer.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::Foo, 2, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<0, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘virtual void {anonymous}::GenericEpochBased_copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/generic_epoch_based_test.cpp:139:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/hazard_eras.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_eras_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/lock_free_ref_count.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/michael_scott_queue_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::HazardEras<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardEras<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = {anonymous}::HazardEras<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardEras<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 82%] Building CXX object CMakeFiles/gtest.dir/test/reclamation/stamp_it_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/reclamation/stamp_it_test.cpp.o -MF CMakeFiles/gtest.dir/test/reclamation/stamp_it_test.cpp.o.d -o CMakeFiles/gtest.dir/test/reclamation/stamp_it_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/stamp_it_test.cpp [ 85%] Building CXX object CMakeFiles/gtest.dir/test/sanitize_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/sanitize_test.cpp.o -MF CMakeFiles/gtest.dir/test/sanitize_test.cpp.o.d -o CMakeFiles/gtest.dir/test/sanitize_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp [ 88%] Building CXX object CMakeFiles/gtest.dir/test/seqlock_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/seqlock_test.cpp.o -MF CMakeFiles/gtest.dir/test/seqlock_test.cpp.o.d -o CMakeFiles/gtest.dir/test/seqlock_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/lock_free_ref_count.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/hazard_pointer.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' [ 91%] Building CXX object CMakeFiles/gtest.dir/test/vyukov_bounded_queue_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/vyukov_bounded_queue_test.cpp.o -MF CMakeFiles/gtest.dir/test/vyukov_bounded_queue_test.cpp.o.d -o CMakeFiles/gtest.dir/test/vyukov_bounded_queue_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_bounded_queue_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:129:48: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:129:48: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:12, from /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘T xenium::seqlock<T, Policies>::load() const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:171:14: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘T xenium::seqlock<T, Policies>::load() const [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:171:14, inlined from ‘{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:129:27, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::store(const T&) [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:198:13, inlined from ‘{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:131:19, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘T xenium::seqlock<T, Policies>::load() const [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:171:14, inlined from ‘{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:133:22, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:188:12, inlined from ‘{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:135:20, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:190:13, inlined from ‘{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:135:20, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::SeqLock_parallel_usage_Test::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/lock_free_ref_count.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:12: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:129:48: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/stamp_it.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/stamp_it_test.cpp:1: In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::store(const T&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:198:13, inlined from ‘virtual void {anonymous}::SeqLock_load_returns_previously_stored_value_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:43:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::store(const T&) [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:198:13, inlined from ‘virtual void {anonymous}::SeqLock_load_returns_previously_stored_value_with_multiple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:56:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘T xenium::seqlock<T, Policies>::load() const [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<8>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:171:14, inlined from ‘virtual void {anonymous}::SeqLock_load_returns_previously_stored_value_with_multiple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:57:5: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:188:12, inlined from ‘virtual void {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:68:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:190:13, inlined from ‘virtual void {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:68:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_with_multple_slots_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<4>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:188:12, inlined from ‘virtual void {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_with_multple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:82:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_with_multple_slots_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<4>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:190:13, inlined from ‘virtual void {anonymous}::SeqLock_update_functor_receives_latest_value_as_parameter_with_multple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:82:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_read_returns_value_stored_by_update_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:188:12, inlined from ‘virtual void {anonymous}::SeqLock_read_returns_value_stored_by_update_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:96:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_read_returns_value_stored_by_update_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:190:13, inlined from ‘virtual void {anonymous}::SeqLock_read_returns_value_stored_by_update_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:96:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_read_returns_value_stored_by_update_with_multiple_slots_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<4>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:188:12, inlined from ‘virtual void {anonymous}::SeqLock_read_returns_value_stored_by_update_with_multiple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:108:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::store_data(const T&, storage_t&) [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:247:27, inlined from ‘void xenium::seqlock<T, Policies>::update(Func) [with Func = {anonymous}::SeqLock_read_returns_value_stored_by_update_with_multiple_slots_Test::TestBody()::<lambda({anonymous}::Foo&)>; T = {anonymous}::Foo; Policies = {xenium::policy::slots<4>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:190:13, inlined from ‘virtual void {anonymous}::SeqLock_read_returns_value_stored_by_update_with_multiple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:108:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::seqlock<T, Policies>::read_data(T&, const storage_t&) const [with T = {anonymous}::Foo; Policies = {}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:234:27, inlined from ‘T xenium::seqlock<T, Policies>::load() const [with T = {anonymous}::Foo; Policies = {xenium::policy::slots<4>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/seqlock.hpp:171:14, inlined from ‘virtual void {anonymous}::SeqLock_read_returns_value_stored_by_update_with_multiple_slots_Test::TestBody()’ at /build/reproducible-path/xenium-0.0.2+ds/test/seqlock_test.cpp:110:5: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = {anonymous}::HazardEras<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardEras<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::HazardEras<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardEras<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 94%] Building CXX object CMakeFiles/gtest.dir/test/vyukov_hash_map_test.cpp.o /usr/bin/c++ -DDEBUG -I/build/reproducible-path/xenium-0.0.2+ds/. -isystem /usr/src/googletest/googletest -isystem /usr/src/googletest/googletest/include -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -std=gnu++17 -Wall -Wextra -Wno-error=cpp -MD -MT CMakeFiles/gtest.dir/test/vyukov_hash_map_test.cpp.o -MF CMakeFiles/gtest.dir/test/vyukov_hash_map_test.cpp.o.d -o CMakeFiles/gtest.dir/test/vyukov_hash_map_test.cpp.o -c /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::WithCustomDeleter; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::WithCustomDeleter, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void {anonymous}::HazardPointer_supports_custom_deleters_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_static_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:186:68: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘void {anonymous}::HazardPointer_copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_static_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:227:7: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::FooBar; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_static_allocation_strategy>::FooBar, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_static_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void {anonymous}::HazardPointer_guard_ptr_protects_the_same_object_via_different_base_classes_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_static_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:254:68: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::WithCustomDeleter; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::WithCustomDeleter, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void {anonymous}::HazardPointer_supports_custom_deleters_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_dynamic_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:186:68: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::Foo, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘void {anonymous}::HazardPointer_copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_dynamic_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:227:7: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/lock_free_ref_count.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block>; Derived = xenium::reclamation::detail::dynamic_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::dynamic_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::FooBar; MarkedPtr = xenium::marked_ptr<{anonymous}::HazardPointer<{anonymous}::my_dynamic_allocation_strategy>::FooBar, 2, 16>; Traits = xenium::reclamation::hazard_pointer_traits<{anonymous}::my_dynamic_allocation_strategy>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void {anonymous}::HazardPointer_guard_ptr_protects_the_same_object_via_different_base_classes_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = {anonymous}::my_dynamic_allocation_strategy]’ at /build/reproducible-path/xenium-0.0.2+ds/test/reclamation/hazard_pointer_test.cpp:254:68: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:303:26, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 1, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:40:20, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 1> > > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:303:26, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:303:26, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:303:26, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:303:26, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/sanitize_test.cpp:93:23, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::Sanitize_guard_ptrs_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/michael_scott_queue_test.cpp:82:59, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::MichaelScottQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘void xenium::kirsch_kfifo_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/kirsch_kfifo_queue.hpp:195:23, inlined from ‘void {anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:65:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:129:48, inlined from ‘void xenium::kirsch_kfifo_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/kirsch_kfifo_queue.hpp:195:23, inlined from ‘void {anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:65:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::michael_scott_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment, 16, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment, 16, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::segment, 16, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39, inlined from ‘void xenium::kirsch_kfifo_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/kirsch_kfifo_queue.hpp:195:23, inlined from ‘void {anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:65:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘void {anonymous}::KirschKFifoQueue_push_large_number_of_entries_pop_them_in_FIFO_order_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:85:53: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:114:59, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::KirschKFifoQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘void xenium::kirsch_kfifo_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/kirsch_kfifo_queue.hpp:195:23, inlined from ‘void {anonymous}::KirschKFifoQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/kirsch_kfifo_queue_test.cpp:65:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment; MarkedPtr = xenium::marked_ptr<xenium::kirsch_kfifo_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::segment, 16, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘void xenium::ramalhete_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/ramalhete_queue.hpp:185:14, inlined from ‘void {anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> > >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp:98:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/lock_free_ref_count.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator::iterator(xenium::harris_michael_list_based_set<Key, Policies>&, xenium::harris_michael_list_based_set<Key, Policies>::concurrent_ptr*) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:232:23, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator xenium::harris_michael_list_based_set<Key, Policies>::begin() [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:514:31, inlined from ‘void {anonymous}::HarrisMichaelListBasedSet_comparer_policy_defines_order_of_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_eras<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:97:8: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp:133:59, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::RamalheteQueue_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39, inlined from ‘void xenium::ramalhete_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/ramalhete_queue.hpp:185:14, inlined from ‘void {anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp:98:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘void xenium::ramalhete_queue<T, Policies>::push(value_type) [with T = std::unique_ptr<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, std::default_delete<{anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/ramalhete_queue.hpp:185:14, inlined from ‘void {anonymous}::RamalheteQueue_deletes_remaining_unique_ptr_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/ramalhete_queue_test.cpp:98:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<{anonymous}::RamalheteQueue_supports_trivially_copyable_types_smaller_than_a_pointer_Test<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> > > >::TestBody()::dummy, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int*, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<std::unique_ptr<int>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<2, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::ramalhete_queue<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2, 2, 100> > > > >::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘bool xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:221:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘bool xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:221:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:309:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:312:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_list_based_set<Key, Policies>::iterator, bool> xenium::harris_michael_list_based_set<Key, Policies>::emplace_or_get(Args&& ...) [with Args = {int}; Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:412:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator::iterator(xenium::harris_michael_list_based_set<Key, Policies>&, xenium::harris_michael_list_based_set<Key, Policies>::concurrent_ptr*) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:232:23, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator::iterator(xenium::harris_michael_list_based_set<Key, Policies>&, xenium::harris_michael_list_based_set<Key, Policies>::concurrent_ptr*) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:227:12, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator xenium::harris_michael_list_based_set<Key, Policies>::begin() [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:514:31, inlined from ‘void {anonymous}::HarrisMichaelListBasedSet_comparer_policy_defines_order_of_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:97:8: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:309:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:312:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_list_based_set<Key, Policies>::iterator, bool> xenium::harris_michael_list_based_set<Key, Policies>::emplace_or_get(Args&& ...) [with Args = {int&}; Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:412:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_list_based_set<Key, Policies>::iterator, bool> xenium::harris_michael_list_based_set<Key, Policies>::emplace_or_get(Args&& ...) [with Args = {const int&}; Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:412:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator xenium::harris_michael_list_based_set<Key, Policies>::erase(iterator) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:487:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_list_based_set<Key, Policies>::iterator, bool> xenium::harris_michael_list_based_set<Key, Policies>::emplace_or_get(Args&& ...) [with Args = {int}; Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:412:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::HarrisMichaelListBasedSet_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:179:59: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::HarrisMichaelListBasedSet_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:215:61: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:312:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_list_based_set<Key, Policies>::find(const Key&, find_info&, backoff&) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:312:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_list_based_set<int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> > >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator::iterator(xenium::harris_michael_list_based_set<Key, Policies>&, xenium::harris_michael_list_based_set<Key, Policies>::concurrent_ptr*) [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:232:23, inlined from ‘xenium::harris_michael_list_based_set<Key, Policies>::iterator xenium::harris_michael_list_based_set<Key, Policies>::begin() [with Key = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::compare<std::greater<int> >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_list_based_set.hpp:514:31, inlined from ‘void {anonymous}::HarrisMichaelListBasedSet_comparer_policy_defines_order_of_entries_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_list_based_set_test.cpp:97:8: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<20, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘bool xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:158:18, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In file included from /usr/include/c++/14/atomic:50, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/detail/concurrent_ptr.hpp:11, from /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/hazard_pointer.hpp:9, from /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:1: In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘bool xenium::reclamation::quiescent_state_based::thread_data::try_update_epoch(unsigned int, unsigned int)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/quiescent_state_based.hpp:129:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:307:25, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_from_prev_list(marked_ptr&, marked_ptr, marked_ptr&)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:361:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:155:49, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘bool std::__atomic_impl::__compare_exchange(_Tp&, _Val<_Tp>&, _Val<_Tp>&, bool, std::memory_order, std::memory_order) [with bool _AtomicRef = false; _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’, inlined from ‘bool std::atomic<_Tp>::compare_exchange_weak(_Tp&, _Tp, std::memory_order, std::memory_order) [with _Tp = xenium::marked_ptr<xenium::reclamation::stamp_it::thread_control_block, 18>]’ at /usr/include/c++/14/atomic:342:42, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::mark_next(marked_ptr, size_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:563:46, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove_or_skip_marked_block(marked_ptr&, marked_ptr&, marked_ptr, xenium::reclamation::stamp_it::stamp_t)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:485:24, inlined from ‘void xenium::reclamation::stamp_it::thread_order_queue::remove_from_next_list(marked_ptr, marked_ptr, marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:448:40, inlined from ‘bool xenium::reclamation::stamp_it::thread_order_queue::remove(marked_ptr)’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:157:30, inlined from ‘void xenium::reclamation::stamp_it::thread_data::leave_region()’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/stamp_it.hpp:620:36: /usr/include/c++/14/bits/atomic_base.h:1002:45: warning: failure memory model ‘memory_order_acquire’ cannot be stronger than success memory model ‘memory_order_relaxed’ for ‘bool __atomic_compare_exchange_8(volatile void*, void*, long unsigned int, bool, int, int)’ [-Winvalid-memory-model] 1002 | return __atomic_compare_exchange(__pval, std::__addressof(__e), | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1003 | std::__addressof(__i), __is_weak, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1004 | int(__s), int(__f)); | ~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/atomic_base.h:1002:45: note: valid models are 'memory_order_relaxed' In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:489:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘bool xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:221:39, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {int, const char*&}; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace_lazy<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::operator[](const int&)::<lambda()> >(int, xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::operator[](const int&)::<lambda()>)::<lambda(xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, int)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:489:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::harris_michael_hash_map<Key, Value, Policies>::iterator xenium::harris_michael_hash_map<Key, Value, Policies>::erase(iterator) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:736:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const int&}; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int&}; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace<int&>(std::__cxx11::basic_string<char>, int&)::<lambda(xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, std::__cxx11::basic_string<char>)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:489:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:169:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:160:8, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::harris_michael_hash_map<Key, Value, Policies>::iterator xenium::harris_michael_hash_map<Key, Value, Policies>::erase(iterator) [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:736:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {int, int}; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {int&, int&}; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::emplace_or_get(Args&& ...) [with Args = {int, int&}; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:663:15: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::HarrisMichaelHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:279:59: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace_lazy<{anonymous}::HarrisMichaelHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>::<lambda()> >(std::__cxx11::basic_string<char>, {anonymous}::HarrisMichaelHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>::<lambda()>)::<lambda(xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, std::__cxx11::basic_string<char>)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::get_or_emplace_lazy(Key, Factory) [with Factory = {anonymous}::HarrisMichaelHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>::<lambda()>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:596:4, inlined from ‘{anonymous}::HarrisMichaelHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:289:14: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::HarrisMichaelHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:323:61: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace<int>(int, int&&)::<lambda(xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, int)>; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace_lazy<{anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >(int, {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>)::<lambda(xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, int)>; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::get_or_emplace_lazy(Key, Factory) [with Factory = {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:596:4, inlined from ‘void {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:87:8: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::do_get_or_emplace_lazy(Key, Factory) [with Factory = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::get_or_emplace_lazy<{anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >(int, {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>)::<lambda(xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10> >::hash_t, int)>; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:626:16, inlined from ‘std::pair<xenium::harris_michael_hash_map<Key, Value, Policies>::iterator, bool> xenium::harris_michael_hash_map<Key, Value, Policies>::get_or_emplace_lazy(Key, Factory) [with Factory = {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:596:4, inlined from ‘void {anonymous}::HarrisMichaelHashMap_get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/harris_michael_hash_map_test.cpp:102:8: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era* xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::alloc_hazard_era(hazard_era*&, era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:315:24, inlined from ‘typename Traits::allocation_strategy::thread_control_block::hazard_era* xenium::reclamation::hazard_eras<Traits>::thread_data::alloc_hazard_era(xenium::reclamation::hazard_eras<Traits>::era_t) [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:502:45: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<reclamation::hazard_eras<> >::TestBody()::node, reclamation::hazard_eras<> >, parameter::nil, reclamation::hazard_eras<>, false, true>::node, 0, reclamation::hazard_eras<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16, inlined from ‘xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::accessor::accessor(xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::storage_value_type&, std::memory_order) [with Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_eras<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_eras<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:144:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<reclamation::hazard_eras<> >::TestBody()::node, 0, reclamation::hazard_eras<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16, inlined from ‘xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::accessor::accessor(xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::storage_value_type&, std::memory_order) [with Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_eras<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_eras<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:145:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_eras<> >::TestBody()::node, xenium::reclamation::hazard_eras<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>& xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::operator=(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:64:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:492:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘bool xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire_if_equal(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, const MarkedPtr&, std::memory_order) [with T = xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node; MarkedPtr = xenium::marked_ptr<xenium::harris_michael_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10> >::node, 1, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:128:19, inlined from ‘bool xenium::harris_michael_hash_map<Key, Value, Policies>::find(hash_t, const Key&, std::size_t, find_info&, backoff&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::buckets<10>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/harris_michael_hash_map.hpp:504:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_eras<> >::TestBody()::dummy_hash> >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_eras<> >::TestBody()::dummy_hash> >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::one_thread, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:357:33: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::epoch_t xenium::reclamation::generic_epoch_based<Traits>::thread_data::update_global_epoch(xenium::reclamation::generic_epoch_based<Traits>::epoch_t, xenium::reclamation::generic_epoch_based<Traits>::epoch_t) [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:417:33, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::do_enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::none>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:378:38: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:526:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:541:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value*, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:165:55: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value*, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:166:80: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:93:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:93:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value*, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:165:55: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value*, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:166:80: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<reclamation::hazard_pointer<> >::TestBody()::node, reclamation::hazard_pointer<> >, parameter::nil, reclamation::hazard_pointer<>, false, true>::node, 0, reclamation::hazard_pointer<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16, inlined from ‘xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::accessor::accessor(xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::storage_value_type&, std::memory_order) [with Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:144:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<reclamation::hazard_pointer<> >::TestBody()::node, 0, reclamation::hazard_pointer<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16, inlined from ‘xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::accessor::accessor(xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::storage_value_type&, std::memory_order) [with Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:145:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:93:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:208:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:93:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:208:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:279:9, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::emplace(key_type, value_type) [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:197:34, inlined from ‘void {anonymous}::VyukovHashMap_erase_unlocks_bucket_in_case_of_exception_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:346:14: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [ 97%] Linking CXX executable benchmark /usr/bin/cmake -E cmake_link_script CMakeFiles/benchmark.dir/link.txt --verbose=1 In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:279:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ /usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -Wl,-z,relro -Wl,-z,now -rdynamic -Wl,--dependency-file=CMakeFiles/benchmark.dir/link.d CMakeFiles/benchmark.dir/benchmarks/benchmark.cpp.o CMakeFiles/benchmark.dir/benchmarks/execution.cpp.o CMakeFiles/benchmark.dir/benchmarks/hash_map_benchmark.cpp.o CMakeFiles/benchmark.dir/benchmarks/main.cpp.o CMakeFiles/benchmark.dir/benchmarks/queue_benchmark.cpp.o CMakeFiles/benchmark.dir/benchmarks/report.cpp.o CMakeFiles/benchmark.dir/benchmarks/workload.cpp.o -o benchmark make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [ 97%] Built target benchmark In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, parameter::nil, reclamation::generic_epoch_based<reclamation::generic_epoch_based_traits<10, reclamation::scan::all_threads, reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, reclamation::generic_epoch_based<reclamation::generic_epoch_based_traits<10, reclamation::scan::all_threads, reclamation::abandon::never, xenium::reclamation::region_extension::eager> >::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:311:27, inlined from ‘void {anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:370:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:311:27, inlined from ‘void {anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:370:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::reclaim_internal(accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:405:12, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:312:27, inlined from ‘void {anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:370:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value&&, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:380:50: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:298:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:298:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, parameter::nil, reclamation::hazard_eras<>, false, false>::node, 0, reclamation::hazard_eras<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, parameter::nil, reclamation::hazard_eras<>, false, true>::node, 0, reclamation::hazard_eras<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::hazard_era::set_era(xenium::reclamation::detail::basic_he_thread_control_block<Strategy, Derived>::era_t) [with Strategy = xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block>; Derived = xenium::reclamation::detail::static_he_thread_control_block<xenium::reclamation::detail::generic_hazard_era_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_he_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:234:35, inlined from ‘void xenium::reclamation::hazard_eras<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_eras<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_eras<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_era_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_eras.hpp:119:22, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, parameter::nil, reclamation::hazard_eras<>, true, false>::node, 0, reclamation::hazard_eras<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, parameter::nil, reclamation::hazard_pointer<>, false, false>::node, 0, reclamation::hazard_pointer<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, parameter::nil, reclamation::hazard_pointer<>, false, true>::node, 0, reclamation::hazard_pointer<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value&&, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:380:50: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::hazard_pointer<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:104:21, inlined from ‘auto xenium::acquire_guard(ConcurrentPtr&, std::memory_order) [with ConcurrentPtr = reclamation::detail::concurrent_ptr<impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, parameter::nil, reclamation::hazard_pointer<>, true, false>::node, 0, reclamation::hazard_pointer<>::guard_ptr>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/acquire_guard.hpp:24:16: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:564:61, inlined from ‘constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = void; _Fn = {anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:61:36, inlined from ‘constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>; _Args = {}]’ at /usr/include/c++/14/bits/invoke.h:96:40, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::_M_invoke(std::_Index_tuple<_Ind ...>) [with long unsigned int ..._Ind = {0}; _Tuple = std::tuple<{anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:301:26, inlined from ‘typename std::thread::_Invoker<_Tuple>::__result<_Tuple>::type std::thread::_Invoker<_Tuple>::operator()() [with _Tuple = std::tuple<{anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> >]’ at /usr/include/c++/14/bits/std_thread.h:308:20, inlined from ‘void std::thread::_State_impl<_Callable>::_M_run() [with _Callable = std::thread::_Invoker<std::tuple<{anonymous}::VyukovHashMap_parallel_usage_with_same_values_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()> > >]’ at /usr/include/c++/14/bits/std_thread.h:253:20: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::VyukovHashMap_parallel_usage_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:465:61: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<int>(key_type, int&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<int>(key_type, int&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:386:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<int>(key_type, int&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<int>(key_type, int&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::block, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:298:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:298:17, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::acquire(xenium::reclamation::generic_epoch_based<Traits>::concurrent_ptr<T>&, std::memory_order) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, true, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:201:39: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, true>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:137:3, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node; VReclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >, xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::node, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::region_guard::region_guard() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:126:35, inlined from ‘{anonymous}::VyukovHashMap_parallel_usage_with_nontrivial_types_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:515:61: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::set_critical_region_flag() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:337:31, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_region() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:287:35, inlined from ‘void xenium::reclamation::generic_epoch_based<Traits>::thread_data::enter_critical() [with Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:301:19, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:141:39, inlined from ‘xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::generic_epoch_based<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >, false, false>::node, 0, 16>; Traits = xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/generic_epoch_based.hpp:147:27, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::reclaim_internal(accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> >; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:405:12, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:312:27, inlined from ‘{anonymous}::VyukovHashMap_parallel_usage_with_nontrivial_types_Test<xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10, xenium::reclamation::scan::all_threads, xenium::reclamation::abandon::never, xenium::reclamation::region_extension::eager> > >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:533:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:441:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::hazard_pointer<Traits>::thread_data::scan() [with Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:456:31: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:208:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, true, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:99:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<int, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = int; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_managed_pointer_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_managed_pointer_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:208:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value&&, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:314:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:256:49: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:304:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value&&, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:314:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda()>; Callback = xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<const char (&)[4]>(key_type, const char (&)[4])::<lambda(xenium::vyukov_hash_map<int, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:283:49: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::store_item(storage_key_type&, storage_value_type&, xenium::hash_t, Key&&, Value&&, std::memory_order, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:380:50, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:256:49: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<int>(key_type, int&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash> >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:279:9: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = false; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<int, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = int; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<int, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, true, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:40:20, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, true, false>::reclaim_internal(accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:329:12, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = int; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:312:27, inlined from ‘void {anonymous}::VyukovHashMap_with_string_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:247:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block; MarkedPtr = xenium::marked_ptr<xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::block, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::do_grow() [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:706:17, inlined from ‘void xenium::vyukov_hash_map<Key, Value, Policies>::grow(bucket&, bucket_state) [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:624:10, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = false; Factory = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda()>; Callback = xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::emplace(key_type, value_type)::<lambda(xenium::vyukov_hash_map<{anonymous}::throwing_key, int, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:4&)>; Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:279:9, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::emplace(key_type, value_type) [with Key = {anonymous}::throwing_key; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:197:34, inlined from ‘void {anonymous}::VyukovHashMap_erase_unlocks_bucket_in_case_of_exception_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:346:14: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<std::nullptr_t>(key_type, std::nullptr_t&&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {std::nullptr_t}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:316:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:40:20, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::reclaim_internal(accessor&) [with Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:200:12, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:312:27, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:321:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:249:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:178:53, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; MarkedPtr = xenium::marked_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, xenium::managed_ptr<Value, VReclaimer>, ValueReclaimer, Reclaimer, false, true>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node; VReclaimer = xenium::reclamation::hazard_pointer<>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:181:82, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_get_or_emplace(Key&&, Factory&&, Callback&&) [with bool AcquireAccessor = true; Factory = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda()>; Callback = xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::get_or_emplace<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&>(key_type, {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&)::<lambda(xenium::vyukov_hash_map<std::__cxx11::basic_string<char>, xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >, xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > > >::accessor&&, auto:5&)>; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:269:54, inlined from ‘std::pair<typename xenium::impl::vyukov_hash_map_traits<Key, Value, typename xenium::parameter::type_param<xenium::policy::value_reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, typename xenium::parameter::type_param<xenium::policy::reclaimer, xenium::parameter::pack<Args ...>, xenium::parameter::nil>::type, xenium::detail::vyukov_supported_type<Key>::value, xenium::detail::vyukov_supported_type<Value>::value>::accessor, bool> xenium::vyukov_hash_map<Key, Value, Policies>::get_or_emplace(key_type, Args&& ...) [with Args = {{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node*&}; Key = std::__cxx11::basic_string<char>; Value = xenium::managed_ptr<{anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::node, xenium::reclamation::hazard_pointer<> >; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:209:42, inlined from ‘void {anonymous}::VyukovHashMap_with_string_key_and_managed_ptr_value_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:326:47: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, false>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:40:20, inlined from ‘static void xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::reclaim_internal(accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = false]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:405:12, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = std::__cxx11::basic_string<char>; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:312:27, inlined from ‘{anonymous}::VyukovHashMap_parallel_usage_with_nontrivial_types_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::<lambda()>’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:533:13: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:349:43, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:311:27, inlined from ‘void {anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:370:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ In function ‘void std::atomic_thread_fence(memory_order)’, inlined from ‘void xenium::reclamation::detail::basic_hp_thread_control_block<Strategy, Derived>::hazard_pointer::set_object(xenium::reclamation::detail::deletable_object*) [with Strategy = xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block>; Derived = xenium::reclamation::detail::static_hp_thread_control_block<xenium::reclamation::detail::generic_hp_allocation_strategy<3, 2, 100, xenium::reclamation::detail::static_hp_thread_control_block> >]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:184:35, inlined from ‘xenium::reclamation::hazard_pointer<Traits>::guard_ptr<T, MarkedPtr>::guard_ptr(const MarkedPtr&) [with T = xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node; MarkedPtr = xenium::marked_ptr<xenium::impl::vyukov_hash_map_traits<std::__cxx11::basic_string<char>, int, xenium::parameter::nil, xenium::reclamation::hazard_pointer<>, false, true>::node, 0, 16>; Traits = xenium::reclamation::hazard_pointer_traits<>]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/reclamation/impl/hazard_pointer.hpp:33:21, inlined from ‘static bool xenium::impl::vyukov_hash_map_traits<Key, Value, ValueReclaimer, Reclaimer, false, TrivialValue>::compare_key(storage_key_type&, storage_value_type&, const Key&, xenium::hash_t, accessor&) [with bool AcquireAccessor = true; Key = std::__cxx11::basic_string<char>; Value = int; ValueReclaimer = xenium::parameter::nil; Reclaimer = xenium::reclamation::hazard_pointer<>; bool TrivialValue = true]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map_traits.hpp:391:48, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::do_extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:399:43, inlined from ‘bool xenium::vyukov_hash_map<Key, Value, Policies>::extract(const key_type&, accessor&) [with Key = std::__cxx11::basic_string<char>; Value = int; Policies = {xenium::policy::reclaimer<xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3, 2, 100> > > >, xenium::policy::hash<{anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<xenium::reclamation::hazard_pointer<> >::TestBody()::dummy_hash>}]’ at /build/reproducible-path/xenium-0.0.2+ds/./xenium/impl/vyukov_hash_map.hpp:311:27, inlined from ‘void {anonymous}::VyukovHashMap_correctly_handles_hash_collisions_of_nontrivial_keys_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = xenium::reclamation::hazard_pointer<>]’ at /build/reproducible-path/xenium-0.0.2+ds/test/vyukov_hash_map_test.cpp:370:3: /usr/include/c++/14/bits/atomic_base.h:146:26: warning: ‘atomic_thread_fence’ is not supported with ‘-fsanitize=thread’ [-Wtsan] 146 | { __atomic_thread_fence(int(__m)); } | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ [100%] Linking CXX executable gtest /usr/bin/cmake -E cmake_link_script CMakeFiles/gtest.dir/link.txt --verbose=1 /usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/xenium-0.0.2+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fsanitize=thread -Wl,-z,relro -Wl,-z,now -rdynamic -Wl,--dependency-file=CMakeFiles/gtest.dir/link.d CMakeFiles/gtest.dir/test/chase_work_stealing_deque_test.cpp.o CMakeFiles/gtest.dir/test/concurrent_ptr_test.cpp.o CMakeFiles/gtest.dir/test/harris_michael_hash_map_test.cpp.o CMakeFiles/gtest.dir/test/harris_michael_list_based_set_test.cpp.o CMakeFiles/gtest.dir/test/kirsch_bounded_kfifo_queue_test.cpp.o CMakeFiles/gtest.dir/test/kirsch_kfifo_queue_test.cpp.o CMakeFiles/gtest.dir/test/left_right_test.cpp.o CMakeFiles/gtest.dir/test/main.cpp.o CMakeFiles/gtest.dir/test/marked_ptr_test.cpp.o CMakeFiles/gtest.dir/test/michael_scott_queue_test.cpp.o CMakeFiles/gtest.dir/test/parameter_test.cpp.o CMakeFiles/gtest.dir/test/ramalhete_queue_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/generic_epoch_based_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/hazard_eras_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/hazard_pointer_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/lock_free_ref_count_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/quiescent_state_based_test.cpp.o CMakeFiles/gtest.dir/test/reclamation/stamp_it_test.cpp.o CMakeFiles/gtest.dir/test/sanitize_test.cpp.o CMakeFiles/gtest.dir/test/seqlock_test.cpp.o CMakeFiles/gtest.dir/test/vyukov_bounded_queue_test.cpp.o CMakeFiles/gtest.dir/test/vyukov_hash_map_test.cpp.o -o gtest libgoogletest.a make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [100%] Built target gtest make[3]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/cmake -E cmake_progress_start /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles 0 make[2]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/make -C obj-$(dpkg-architecture -qDEB_TARGET_GNU_TYPE) doc make[2]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/cmake -S/build/reproducible-path/xenium-0.0.2+ds -B/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 /usr/bin/make -f CMakeFiles/Makefile2 doc make[3]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/cmake -S/build/reproducible-path/xenium-0.0.2+ds -B/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 /usr/bin/cmake -E cmake_progress_start /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles 1 /usr/bin/make -f CMakeFiles/Makefile2 CMakeFiles/doc.dir/all make[4]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/make -f CMakeFiles/doc.dir/build.make CMakeFiles/doc.dir/depend make[5]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' cd /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles/doc.dir/DependInfo.cmake "--color=" make[5]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/make -f CMakeFiles/doc.dir/build.make CMakeFiles/doc.dir/build make[5]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [100%] Generating API documentation with Doxygen cd /build/reproducible-path/xenium-0.0.2+ds/doc && /usr/bin/doxygen /build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile warning: Tag 'TCL_SUBST' at line 247 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'COLS_IN_ALPHA_INDEX' at line 1110 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'HTML_TIMESTAMP' at line 1246 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'FORMULA_TRANSPARENT' at line 1527 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'LATEX_SOURCE_CODE' at line 1815 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'LATEX_TIMESTAMP' at line 1831 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'RTF_SOURCE_CODE' at line 1897 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'DOCBOOK_PROGRAMLISTING' at line 1995 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'PERL_PATH' at line 2175 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'CLASS_DIAGRAMS' at line 2188 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'MSCGEN_PATH' at line 2197 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'DOT_FONTNAME' at line 2239 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'DOT_FONTSIZE' at line 2246 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag 'DOT_TRANSPARENT' at line 2472 of file '/build/reproducible-path/xenium-0.0.2+ds/doc/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Specified markdown mainpage 'README.md' does not exist Doxygen version used: 1.9.8 Searching for include files... Searching for example files... Searching for images... Searching for dot files... Searching for msc files... Searching for dia files... Searching for files to exclude Searching INPUT for files to process... Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium/detail Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium/impl Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl Searching for files in directory /build/reproducible-path/xenium-0.0.2+ds/doc Reading and parsing tag files Parsing files Reading /build/reproducible-path/xenium-0.0.2+ds/README.md... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/acquire_guard.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/acquire_guard.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/aligned_object.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/aligned_object.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/backoff.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/backoff.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/chase_work_stealing_deque.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/chase_work_stealing_deque.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/fixed_size_circular_array.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/fixed_size_circular_array.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/growing_circular_array.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/growing_circular_array.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/hardware.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/hardware.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/pointer_queue_traits.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/pointer_queue_traits.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/port.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/port.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_hash_map.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_hash_map.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_list_based_set.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_list_based_set.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/hash.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/hash.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map_traits.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map_traits.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_bounded_kfifo_queue.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_bounded_kfifo_queue.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_kfifo_queue.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_kfifo_queue.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/left_right.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/left_right.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/marked_ptr.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/marked_ptr.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/michael_scott_queue.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/michael_scott_queue.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/parameter.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/parameter.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/policy.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/policy.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/ramalhete_queue.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/ramalhete_queue.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/allocation_tracker.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/allocation_tracker.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/concurrent_ptr.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/concurrent_ptr.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/deletable_object.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/deletable_object.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/guard_ptr.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/guard_ptr.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/orphan.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/orphan.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/perf_counter.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/perf_counter.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/retire_list.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/retire_list.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/thread_block_list.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/thread_block_list.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/generic_epoch_based.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/generic_epoch_based.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_eras.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_eras.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_pointer.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_pointer.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/generic_epoch_based.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/generic_epoch_based.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_eras.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_eras.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_pointer.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_pointer.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/quiescent_state_based.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/quiescent_state_based.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/stamp_it.hpp... Parsing file /build/reproducible-/build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp:133: warning: no uniquely matching class member found for template < Traits > template < T, N, Deleter > void * xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, Deleter >::operator new(size_t sz) Possible candidates: 'static void * xenium::aligned_object< Derived, Alignment >::operator new(size_t sz)' at line 26 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/aligned_object.hpp 'void * xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, DeleterT >::operator new(size_t sz)' at line 138 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp:148: warning: no uniquely matching class member found for template < Traits > template < T, N, Deleter > void xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, Deleter >::operator delete(void *p) Possible candidates: 'static void xenium::aligned_object< Derived, Alignment >::operator delete(void *p)' at line 30 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/aligned_object.hpp 'void xenium::vyukov_hash_map< Key, Value, Policies >::block< Key, Value, Policies >::operator delete(void *p)' at line 149 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map.hpp 'void xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, DeleterT >::operator delete(void *p)' at line 139 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp:159: warning: no matching class member found for template < Traits > template < T, N, Deleter > bool xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, Deleter >::decrement_refcnt() Possible candidates: 'bool xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, DeleterT >::decrement_refcnt()' at line 142 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp:319: warning: no matching class member found for template < Traits > template < T, N, Deleter > lock_free_ref_count< Traits >::template enable_concurrent_ptr< T, N, Deleter >::free_list xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, Deleter >::global_free_list Possible candidates: 'static free_list xenium::reclamation::lock_free_ref_count< Traits >::enable_concurrent_ptr< T, N, DeleterT >::global_free_list' at line 168 of file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp path/xenium-0.0.2+ds/xenium/reclamation/impl/stamp_it.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/quiescent_state_based.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/quiescent_state_based.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/stamp_it.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/stamp_it.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/seqlock.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/seqlock.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/utils.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/utils.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/vyukov_bounded_queue.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/vyukov_bounded_queue.hpp... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/xenium/vyukov_hash_map.hpp... Parsing file /build/reproducible-path/xenium-0.0.2+ds/xenium/vyukov_hash_map.hpp... Reading /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md... Preprocessing /build/reproducible-path/xenium-0.0.2+ds/doc/xenium.dox... Parsing file /build/reproducible-path/xenium-0.0.2+ds/doc/xenium.dox... Building macro definition list... Building group list... Building directory list... Building namespace list... Building file list... Building class list... Building concept list... Computing nesting relations for classes... Associating documentation with classes... Associating documentation with concepts... Associating documentation with modules... Building example list... Searching for enumerations... Searching for documented typedefs... Searching for members imported via using declarations... Searching for included using directives... Searching for documented variables... Building interface member list... Building member list... Searching for friends... Searching for documented defines... Computing class inheritance relations... Computing class usage relations... Flushing cached template relations that have become invalid... Computing class relations... Add enum values to enums... Searching for member function documentation... Creating members for template instances... Building page list... Search for main page... Computing page relations... Determining the scope of groups... Computing module relations... Sorting lists... Determining which enums are documented Computing member relations... Building full member lists recursively... Adding members to member groups. Computing member references... Inheriting documentation... Generating disk names... Adding source references... Adding xrefitems... Sorting member lists... Setting anonymous enum type... Computing dependencies between directories... Generating citations page... Counting members... Counting data structures... Resolving user defined references... Finding anchors and sections in the documentation... Transferring function references... Combining using relations... Adding members to index pages... Correcting members for VHDL... Computing tooltip texts... Generating style sheet... Generating search indices... Generating example documentation... Generating file sources... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/acquire_guard.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/aligned_object.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/backoff.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/chase_work_stealing_deque.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/fixed_size_circular_array.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/growing_circular_array.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/hardware.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/pointer_queue_traits.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/detail/port.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_hash_map.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/harris_michael_list_based_set.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/hash.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/vyukov_hash_map.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/impl/vyukov_hash_map_traits.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_bounded_kfifo_queue.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/kirsch_kfifo_queue.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/left_right.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/marked_ptr.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/michael_scott_queue.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/parameter.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/policy.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/ramalhete_queue.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/allocation_tracker.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/concurrent_ptr.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/deletable_object.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/guard_ptr.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/orphan.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/perf_counter.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/retire_list.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail/thread_block_list.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/generic_epoch_based.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/generic_epoch_based.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_pointer.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_pointer.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/hazard_eras.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/hazard_eras.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/lock_free_ref_count.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/lock_free_ref_count.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/quiescent_state_based.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/quiescent_state_based.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl/stamp_it.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/stamp_it.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/seqlock.hpp... Generating code for file /build/reproducible-path/xenium-0.0.2+ds/xenium/utils.hpp... Generating code for file /build/reproducible-p/build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:51: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:51: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:161: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:161: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:330: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:330: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:353: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:353: warning: unexpected token TK_EOF as the argument of ref /build/reproducible-path/xenium-0.0.2+ds/doc/reclamation.md:353: warning: unexpected token TK_EOF as the argument of ref ath/xenium-0.0.2+ds/xenium/vyukov_bounded_queue.hpp... Generating file documentation... Generating page documentation... Generating docs for page reclamation_schemes... Generating group documentation... Generating class documentation... Generating concept documentation... Generating module documentation... Generating namespace documentation... Generating docs for compound xenium::aligned_object... Generating docs for compound xenium::chase_work_stealing_deque... Generating docs for compound xenium::harris_michael_hash_map... Generating docs for nested compound xenium::harris_michael_hash_map::accessor... Generating docs for nested compound xenium::harris_michael_hash_map::iterator... Generating docs for compound xenium::harris_michael_list_based_set... Generating docs for nested compound xenium::harris_michael_list_based_set::iterator... Generating docs for compound xenium::hash... Generating docs for compound xenium::hash< Key * >... Generating docs for compound xenium::kirsch_bounded_kfifo_queue... Generating docs for compound xenium::kirsch_kfifo_queue... Generating docs for compound xenium::left_right... Generating docs for compound xenium::managed_ptr... Generating docs for compound xenium::marked_ptr... Generating docs for compound xenium::michael_scott_queue... Generating docs for compound xenium::no_backoff... Generating docs for compound xenium::ramalhete_queue... Generating docs for compound xenium::seqlock... Generating docs for compound xenium::single_backoff... Generating docs for compound xenium::vyukov_bounded_queue... Generating docs for compound xenium::vyukov_hash_map... Generating docs for nested compound xenium::vyukov_hash_map::iterator... Generating docs for compound xenium::policy::abandon... Generating docs for compound xenium::policy::allocation_strategy... Generating docs for compound xenium::policy::backoff... Generating docs for compound xenium::policy::buckets... Generating docs for compound xenium::policy::capacity... Generating docs for compound xenium::policy::compare... Generating docs for compound xenium::policy::container... Generating docs for compound xenium::policy::default_to_weak... Generating docs for compound xenium::policy::entries_per_node... Generating docs for compound xenium::policy::hash... Generating docs for compound xenium::policy::insert_padding... Generating docs for compound xenium::policy::map_to_bucket... Generating docs for compound xenium::policy::memoize_hash... Generating docs for compound xenium::policy::padding_bytes... Generating docs for compound xenium::policy::pop_retries... Generating docs for compound xenium::policy::reclaimer... Generating docs for compound xenium::policy::region_extension... Generating docs for compound xenium::policy::scan... Generating docs for compound xenium::policy::scan_frequency... Generating docs for compound xenium::policy::slots... Generating docs for compound xenium::policy::thread_local_free_list_size... Generating docs for compound xenium::policy::value_reclaimer... Generating docs for compound xenium::reclamation::bad_hazard_era_alloc... Generating docs for compound xenium::reclamation::bad_hazard_pointer_alloc... Generating docs for compound xenium::reclamation::generic_epoch_based... Generating docs for compound xenium::reclamation::hazard_eras... Generating docs for compound xenium::reclamation::hazard_pointer... Generating docs for compound xenium::reclamation::lock_free_ref_count... Generating docs for compound xenium::reclamation::quiescent_state_based... Generating docs for compound xenium::reclamation::stamp_it... Generating docs for namespace xenium::reclamation::abandon Generating docs for compound xenium::reclamation::abandon::always... Generating docs for compound xenium::reclamation::abandon::never... Generating docs for compound xenium::reclamation::abandon::when_exceeds_threshold... Generating docs for compound xenium::reclamation::detail::concurrent_ptr... Generating docs for namespace xenium::reclamation::scan Generating docs for compound xenium::reclamation::scan::all_threads... Generating docs for composh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_5e5409182854c42133645e046b70a564_dep.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_5e5409182854c42133645e046b70a564_dep.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_5e5409182854c42133645e046b70a564_dep.png"' sh: 1: dot: not found sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_b2167ce3c74eb0563c5220cbf4c14dc4_dep.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_b2167ce3c74eb0563c5220cbf4c14dc4_dep.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_b2167ce3c74eb0563c5220cbf4c14dc4_dep.png"' sh: 1: dot: not found sh: 1: dot: not found sh: 1: sh: 1: dot: not found dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_0.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_0.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_0.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_2f1921f5f286e9def96705a312aa388d_dep.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_2f1921f5f286e9def96705a312aa388d_dep.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_2f1921f5f286e9def96705a312aa388d_dep.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_1.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_1.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_1.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_10.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_10.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_10.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_4ae443ef4fcd46e2322e5b79b32711f1_dep.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_4ae443ef4fcd46e2322e5b79b32711f1_dep.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_4ae443ef4fcd46e2322e5b79b32711f1_dep.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_61f30d9222d010cb1387fc6142f9322f_dep.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_61f30d9222d010cb1387fc6142f9322f_dep.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_61f30d9222d010cb1387fc6142f9322f_dep.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/graph_legend.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/graph_legend.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/graph_legend.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_12.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_12.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_12.png"' sh: 1: sh: 1: dot: not found dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_13.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_13.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_13.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_20.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_20.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_20.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_17.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_17.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_17.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_21.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_21.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_21.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_18.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_18.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_18.png"' sh: 1: sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_24.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_24.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_24.png"' dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_2.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_2.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_2.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_19.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_19.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_19.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_16.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_16.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_16.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_26.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_26.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_26.png"' sh: 1: /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_29.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_29.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_29.png"' dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_11.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_11.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_11.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_30.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_30.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_30.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_25.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_25.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_25.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_14.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_14.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_14.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_28.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_28.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_28.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_3.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_3.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_3.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_33.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_33.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_33.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_38.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_38.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_38.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_39.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_39.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_39.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_27.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_27.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_27.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_40.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_40.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_40.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_15.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_15.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_15.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_41.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_41.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_41.png"' sh: 1: sh: 1: dot: not found dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_35.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_35.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_35.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_34.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_34.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_34.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_23.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_23.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_23.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_43.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_43.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_43.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_37.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_37.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_37.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_31.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_31.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_31.png"' sh: 1: dot: not found sh: 1: dot: not found sh: 1: sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_49.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_49.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_49.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_4.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_4.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_4.png"' dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_32.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_32.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_32.png"' sh: 1: sh: 1: sh: 1: dot: not found sh: 1: dot: not founddot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_42.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_42.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_42.png"' dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_36.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_36.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_36.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_5.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_5.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_5.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_45.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_45.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_45.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_53.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_53.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_53.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_46.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_46.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_46.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_55.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_55.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_55.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_52.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_52.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_52.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_22.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_22.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_22.png"' sh: 1: dot: not found sh: 1: dot: not found sh: 1: dot: not found sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_47.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_47.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_47.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_50.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_50.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_50.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_57.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_57.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_57.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_54.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_54.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_54.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_44.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_44.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_44.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_58.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_58.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_58.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_59.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_59.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_59.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_56.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_56.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_56.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_60.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_60.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_60.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_51.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_51.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_51.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_61.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_61.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_61.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_6.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_6.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_6.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_66.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_66.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_66.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_48.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_48.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_48.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_7.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_7.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_7.png"' sh: 1: dot: not found sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_64.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_64.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_64.png"' sh: 1: sh: 1: dot: not found dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_67.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_67.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_67.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_65.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_65.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_65.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_8.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_8.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_8.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_62.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_62.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_62.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_68.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_68.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_68.png"' /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_9.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_9.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_9.png"' sh: 1: dot: not found /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_63.dot:1: error: Problems running dot: exit code=127, command='dot', arguments='"/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_63.dot" -Tpng -o "/build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_63.png"' error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_2f1921f5f286e9def96705a312aa388d_dep.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_4ae443ef4fcd46e2322e5b79b32711f1_dep.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_5e5409182854c42133645e046b70a564_dep.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_61f30d9222d010cb1387fc6142f9322f_dep.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/dir_b2167ce3c74eb0563c5220cbf4c14dc4_dep.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_0.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_1.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_2.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_3.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_4.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_5.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_6.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_7.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_8.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_9.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_10.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_11.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_12.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_13.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_14.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_15.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_16.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_17.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_18.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_19.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_20.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_21.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_22.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_23.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_24.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_25.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_26.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_27.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_28.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_29.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_30.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_31.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_32.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_33.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_34.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_35.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_36.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_37.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_38.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_39.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_40.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_41.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_42.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_43.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_44.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_45.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_46.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_47.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_48.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_49.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_50.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_51.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_52.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_53.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_54.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_55.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_56.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_57.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_58.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_59.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_60.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_61.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_62.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_63.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_64.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_65.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_66.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_67.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. error: problems opening map file /build/reproducible-path/xenium-0.0.2+ds/doc/html/inherit_graph_68.map for inclusion in the docs! If you installed Graphviz/dot after a previous failing run, try deleting the output directory and rerun doxygen. und xenium::reclamation::scan::n_threads... Generating docs for compound xenium::reclamation::scan::one_thread... Generating graph info page... Generating directory documentation... Generating dependency graph for directory /build/reproducible-path/xenium-0.0.2+ds/xenium/detail Generating dependency graph for directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/detail Generating dependency graph for directory /build/reproducible-path/xenium-0.0.2+ds/xenium/impl Generating dependency graph for directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation/impl Generating dependency graph for directory /build/reproducible-path/xenium-0.0.2+ds/xenium/reclamation Generating index page... Generating main page... Generating page index... Generating topic index... Generating module index... Generating module member index... Generating namespace index... Generating namespace member index... Generating concept index... Generating annotated compound index... Generating alphabetical compound index... Generating hierarchical class index... Generating graphical class hierarchy... Generating member index... Generating file index... Generating file member index... Generating example index... finalizing index lists... writing tag file... Running plantuml with JAVA... Running dot... Generating dot graphs using 13 parallel threads... Running dot for graph 1/75 Running dot for graph 2/75 Running dot for graph 3/75 Running dot for graph 4/75 Running dot for graph 5/75 Running dot for graph 6/75 Running dot for graph 7/75 Running dot for graph 8/75 Running dot for graph 9/75 Running dot for graph 10/75 Running dot for graph 11/75 Running dot for graph 12/75 Running dot for graph 13/75 Running dot for graph 14/75 Running dot for graph 15/75 Running dot for graph 16/75 Running dot for graph 17/75 Running dot for graph 18/75 Running dot for graph 19/75 Running dot for graph 20/75 Running dot for graph 21/75 Running dot for graph 22/75 Running dot for graph 23/75 Running dot for graph 24/75 Running dot for graph 25/75 Running dot for graph 26/75 Running dot for graph 27/75 Running dot for graph 28/75 Running dot for graph 29/75 Running dot for graph 30/75 Running dot for graph 31/75 Running dot for graph 32/75 Running dot for graph 33/75 Running dot for graph 34/75 Running dot for graph 35/75 Running dot for graph 36/75 Running dot for graph 37/75 Running dot for graph 38/75 Running dot for graph 39/75 Running dot for graph 40/75 Running dot for graph 41/75 Running dot for graph 42/75 Running dot for graph 43/75 Running dot for graph 44/75 Running dot for graph 45/75 Running dot for graph 46/75 Running dot for graph 47/75 Running dot for graph 48/75 Running dot for graph 49/75 Running dot for graph 50/75 Running dot for graph 51/75 Running dot for graph 52/75 Running dot for graph 53/75 Running dot for graph 54/75 Running dot for graph 55/75 Running dot for graph 56/75 Running dot for graph 57/75 Running dot for graph 58/75 Running dot for graph 59/75 Running dot for graph 60/75 Running dot for graph 61/75 Running dot for graph 62/75 Running dot for graph 63/75 Running dot for graph 64/75 Running dot for graph 65/75 Running dot for graph 66/75 Running dot for graph 67/75 Running dot for graph 68/75 Running dot for graph 69/75 Running dot for graph 70/75 Running dot for graph 71/75 Running dot for graph 72/75 Running dot for graph 73/75 Running dot for graph 74/75 Running dot for graph 75/75 Patching output file 1/6 Patching output file 2/6 Patching output file 3/6 Patching output file 4/6 Patching output file 5/6 Patching output file 6/6 type lookup cache used 3419/65536 hits=18019 misses=3816 symbol lookup cache used 3663/65536 hits=24651 misses=3663 finished... make[5]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' [100%] Built target doc make[4]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' /usr/bin/cmake -E cmake_progress_start /build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu/CMakeFiles 0 make[3]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make[2]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds/obj-x86_64-linux-gnu' make[1]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds' debian/rules override_dh_auto_test make[1]: Entering directory '/build/reproducible-path/xenium-0.0.2+ds' echo "I: Executing benchmark - who knows how to execute it properly?" I: Executing benchmark - who knows how to execute it properly? obj-$(dpkg-architecture -qDEB_TARGET_GNU_TYPE)/benchmark || true ============================== This is a __DEBUG__ build! ============================== Usage: benchmark --help | <config-file> [--report=<report-file>] [-- <param>=<value> ...] echo "I: gtest" I: gtest obj-$(dpkg-architecture -qDEB_TARGET_GNU_TYPE)/gtest [==========] Running 819 tests from 71 test suites. [----------] Global test environment set-up. [----------] 6 tests from ChaseWorkStealingDeque [ RUN ] ChaseWorkStealingDeque.push_try_pop_returns_pushed_element [ OK ] ChaseWorkStealingDeque.push_try_pop_returns_pushed_element (0 ms) [ RUN ] ChaseWorkStealingDeque.push_try_steal_returns_pushed_element [ OK ] ChaseWorkStealingDeque.push_try_steal_returns_pushed_element (0 ms) [ RUN ] ChaseWorkStealingDeque.push_two_items_steal_returns_them_in_FIFO_order [ OK ] ChaseWorkStealingDeque.push_two_items_steal_returns_them_in_FIFO_order (0 ms) [ RUN ] ChaseWorkStealingDeque.push_two_items_pop_returns_them_in_LIFO_order [ OK ] ChaseWorkStealingDeque.push_two_items_pop_returns_them_in_LIFO_order (0 ms) [ RUN ] ChaseWorkStealingDeque.push_pop_steal_many [ OK ] ChaseWorkStealingDeque.push_pop_steal_many (4 ms) [ RUN ] ChaseWorkStealingDeque.parallel_usage [ OK ] ChaseWorkStealingDeque.parallel_usage (352 ms) [----------] 6 tests from ChaseWorkStealingDeque (364 ms total) [----------] 5 tests from concurrent_ptr [ RUN ] concurrent_ptr.get_returns_pointer_that_was_passed_to_constructor [ OK ] concurrent_ptr.get_returns_pointer_that_was_passed_to_constructor (0 ms) [ RUN ] concurrent_ptr.get_returns_pointer_that_was_passed_to_store [ OK ] concurrent_ptr.get_returns_pointer_that_was_passed_to_store (0 ms) [ RUN ] concurrent_ptr.compare_exchange_weak_sets_value_and_returns_true_when_expected_value_matches [ OK ] concurrent_ptr.compare_exchange_weak_sets_value_and_returns_true_when_expected_value_matches (0 ms) [ RUN ] concurrent_ptr.compare_exchange_weak_value_remains_unchanged_and_returns_false_when_expected_value_does_not_match [ OK ] concurrent_ptr.compare_exchange_weak_value_remains_unchanged_and_returns_false_when_expected_value_does_not_match (0 ms) [ RUN ] concurrent_ptr.compare_exchange_weak_with_guard_ptr [ OK ] concurrent_ptr.compare_exchange_weak_with_guard_ptr (0 ms) [----------] 5 tests from concurrent_ptr (0 ms total) [----------] 23 tests from HarrisMichaelHashMap/0, where TypeParam = xenium::reclamation::lock_free_ref_count<xenium::reclamation::lock_free_ref_count_traits<false,0ul> > [ RUN ] HarrisMichaelHashMap/0.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/0.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/0.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/0.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/0.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/0.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/0.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/0.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/0.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/0.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/0.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/0.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/0.find_returns_end_iterator_for_non_existing_element (1 ms) [ RUN ] HarrisMichaelHashMap/0.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/0.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/0.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/0.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/0.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/0.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/0.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/0.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/0.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/0.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/0.drain_densely_populated_map_using_erase (1 ms) [ RUN ] HarrisMichaelHashMap/0.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/0.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/0.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/0.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/0.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/0.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/0.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/0.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/0.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/0.parallel_usage [ OK ] HarrisMichaelHashMap/0.parallel_usage (123 ms) [ RUN ] HarrisMichaelHashMap/0.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/0.parallel_usage_with_same_values (107 ms) [----------] 23 tests from HarrisMichaelHashMap/0 (243 ms total) [----------] 23 tests from HarrisMichaelHashMap/1, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] HarrisMichaelHashMap/1.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/1.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/1.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/1.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/1.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/1.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/1.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/1.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/1.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/1.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/1.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/1.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/1.find_returns_end_iterator_for_non_existing_element (1 ms) [ RUN ] HarrisMichaelHashMap/1.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/1.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/1.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/1.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/1.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/1.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/1.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/1.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/1.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/1.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/1.drain_densely_populated_map_using_erase (1 ms) [ RUN ] HarrisMichaelHashMap/1.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/1.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/1.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/1.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/1.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/1.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/1.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/1.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/1.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/1.parallel_usage [ OK ] HarrisMichaelHashMap/1.parallel_usage (146 ms) [ RUN ] HarrisMichaelHashMap/1.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/1.parallel_usage_with_same_values (139 ms) [----------] 23 tests from HarrisMichaelHashMap/1 (295 ms total) [----------] 23 tests from HarrisMichaelHashMap/2, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] HarrisMichaelHashMap/2.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/2.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/2.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/2.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/2.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/2.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/2.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/2.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/2.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/2.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/2.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/2.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/2.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/2.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/2.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/2.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/2.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/2.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/2.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/2.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/2.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/2.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/2.drain_densely_populated_map_using_erase (1 ms) [ RUN ] HarrisMichaelHashMap/2.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/2.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/2.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/2.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/2.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/2.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/2.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/2.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/2.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/2.parallel_usage [ OK ] HarrisMichaelHashMap/2.parallel_usage (150 ms) [ RUN ] HarrisMichaelHashMap/2.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/2.parallel_usage_with_same_values (155 ms) [----------] 23 tests from HarrisMichaelHashMap/2 (315 ms total) [----------] 23 tests from HarrisMichaelHashMap/3, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] HarrisMichaelHashMap/3.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/3.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/3.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/3.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/3.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/3.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/3.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/3.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/3.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/3.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/3.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/3.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/3.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/3.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/3.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/3.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/3.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/3.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/3.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/3.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/3.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/3.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/3.drain_densely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/3.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/3.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/3.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/3.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/3.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/3.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/3.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/3.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/3.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/3.parallel_usage [ OK ] HarrisMichaelHashMap/3.parallel_usage (140 ms) [ RUN ] HarrisMichaelHashMap/3.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/3.parallel_usage_with_same_values (115 ms) [----------] 23 tests from HarrisMichaelHashMap/3 (259 ms total) [----------] 23 tests from HarrisMichaelHashMap/4, where TypeParam = xenium::reclamation::stamp_it [ RUN ] HarrisMichaelHashMap/4.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/4.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/4.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/4.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/4.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/4.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/4.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/4.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/4.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/4.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/4.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/4.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/4.find_returns_end_iterator_for_non_existing_element (1 ms) [ RUN ] HarrisMichaelHashMap/4.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/4.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/4.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/4.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/4.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/4.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/4.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/4.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/4.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/4.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/4.drain_densely_populated_map_using_erase (1 ms) [ RUN ] HarrisMichaelHashMap/4.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/4.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/4.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/4.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/4.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/4.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/4.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/4.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/4.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/4.parallel_usage [ OK ] HarrisMichaelHashMap/4.parallel_usage (95 ms) [ RUN ] HarrisMichaelHashMap/4.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/4.parallel_usage_with_same_values (126 ms) [----------] 23 tests from HarrisMichaelHashMap/4 (232 ms total) [----------] 23 tests from HarrisMichaelHashMap/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] HarrisMichaelHashMap/5.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/5.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/5.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/5.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/5.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/5.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/5.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/5.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/5.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/5.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/5.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/5.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/5.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/5.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/5.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/5.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/5.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/5.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/5.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/5.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/5.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/5.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/5.drain_densely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/5.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/5.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/5.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/5.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/5.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/5.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/5.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/5.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/5.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/5.parallel_usage [ OK ] HarrisMichaelHashMap/5.parallel_usage (143 ms) [ RUN ] HarrisMichaelHashMap/5.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/5.parallel_usage_with_same_values (113 ms) [----------] 23 tests from HarrisMichaelHashMap/5 (261 ms total) [----------] 23 tests from HarrisMichaelHashMap/6, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] HarrisMichaelHashMap/6.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/6.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/6.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/6.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/6.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/6.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/6.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/6.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/6.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/6.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/6.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/6.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/6.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/6.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/6.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/6.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/6.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/6.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/6.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/6.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/6.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/6.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/6.drain_densely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/6.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/6.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/6.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/6.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/6.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/6.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/6.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/6.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/6.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/6.parallel_usage [ OK ] HarrisMichaelHashMap/6.parallel_usage (102 ms) [ RUN ] HarrisMichaelHashMap/6.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/6.parallel_usage_with_same_values (143 ms) [----------] 23 tests from HarrisMichaelHashMap/6 (250 ms total) [----------] 23 tests from HarrisMichaelHashMap/7, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] HarrisMichaelHashMap/7.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/7.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/7.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/7.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/7.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/7.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/7.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/7.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/7.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/7.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/7.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/7.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/7.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/7.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/7.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/7.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/7.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/7.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/7.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/7.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/7.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/7.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/7.drain_densely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/7.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/7.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/7.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/7.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/7.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/7.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/7.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/7.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/7.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/7.parallel_usage [ OK ] HarrisMichaelHashMap/7.parallel_usage (135 ms) [ RUN ] HarrisMichaelHashMap/7.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/7.parallel_usage_with_same_values (131 ms) [----------] 23 tests from HarrisMichaelHashMap/7 (271 ms total) [----------] 23 tests from HarrisMichaelHashMap/8, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<20ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] HarrisMichaelHashMap/8.emplace_or_get_returns_an_iterator_and_true_when_successful [ OK ] HarrisMichaelHashMap/8.emplace_or_get_returns_an_iterator_and_true_when_successful (0 ms) [ RUN ] HarrisMichaelHashMap/8.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false [ OK ] HarrisMichaelHashMap/8.emplace_or_get_for_an_existing_element_returns_an_iterator_to_that_element_and_false (0 ms) [ RUN ] HarrisMichaelHashMap/8.get_or_emplace_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/8.get_or_emplace_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.get_or_emplace_returns_iteratur_to_existing_element [ OK ] HarrisMichaelHashMap/8.get_or_emplace_returns_iteratur_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/8.get_or_emplace_lazy_calls_factory_and_returns_iteratur_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/8.get_or_emplace_lazy_does_not_call_factory_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.containts_returns_false_for_non_existing_element [ OK ] HarrisMichaelHashMap/8.containts_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.contains_returns_true_for_existing_element [ OK ] HarrisMichaelHashMap/8.contains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.find_returns_iterator_to_existing_element [ OK ] HarrisMichaelHashMap/8.find_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelHashMap/8.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.erase_nonexisting_element_returns_false [ OK ] HarrisMichaelHashMap/8.erase_nonexisting_element_returns_false (0 ms) [ RUN ] HarrisMichaelHashMap/8.erase_existing_element_returns_true_and_removes_element [ OK ] HarrisMichaelHashMap/8.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelHashMap/8.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelHashMap/8.begin_returns_end_iterator_for_empty_map [ OK ] HarrisMichaelHashMap/8.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] HarrisMichaelHashMap/8.begin_returns_iterator_to_first_entry [ OK ] HarrisMichaelHashMap/8.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] HarrisMichaelHashMap/8.drain_densely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/8.drain_densely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/8.drain_sparsely_populated_map_using_erase [ OK ] HarrisMichaelHashMap/8.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] HarrisMichaelHashMap/8.iterator_covers_all_entries_in_densely_populated_map [ OK ] HarrisMichaelHashMap/8.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] HarrisMichaelHashMap/8.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] HarrisMichaelHashMap/8.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] HarrisMichaelHashMap/8.operator_at_returns_accessor_to_existing_element [ OK ] HarrisMichaelHashMap/8.operator_at_returns_accessor_to_existing_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.operator_at_returns_accessor_to_newly_inserted_element [ OK ] HarrisMichaelHashMap/8.operator_at_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] HarrisMichaelHashMap/8.parallel_usage [ OK ] HarrisMichaelHashMap/8.parallel_usage (134 ms) [ RUN ] HarrisMichaelHashMap/8.parallel_usage_with_same_values [ OK ] HarrisMichaelHashMap/8.parallel_usage_with_same_values (131 ms) [----------] 23 tests from HarrisMichaelHashMap/8 (275 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/0, where TypeParam = xenium::reclamation::lock_free_ref_count<xenium::reclamation::lock_free_ref_count_traits<false,0ul> > [ RUN ] HarrisMichaelListBasedSet/0.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/0.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/0.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/0.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/0.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/0.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/0.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/0.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/0.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/0.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/0.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/0.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/0.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.iterate_list [ OK ] HarrisMichaelListBasedSet/0.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/0.parallel_usage [ OK ] HarrisMichaelListBasedSet/0.parallel_usage (130 ms) [ RUN ] HarrisMichaelListBasedSet/0.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/0.parallel_usage_with_same_values (131 ms) [----------] 15 tests from HarrisMichaelListBasedSet/0 (263 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/1, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] HarrisMichaelListBasedSet/1.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/1.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/1.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/1.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/1.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/1.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/1.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/1.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/1.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/1.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/1.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/1.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/1.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.iterate_list [ OK ] HarrisMichaelListBasedSet/1.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/1.parallel_usage [ OK ] HarrisMichaelListBasedSet/1.parallel_usage (126 ms) [ RUN ] HarrisMichaelListBasedSet/1.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/1.parallel_usage_with_same_values (131 ms) [----------] 15 tests from HarrisMichaelListBasedSet/1 (259 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/2, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] HarrisMichaelListBasedSet/2.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/2.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/2.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/2.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/2.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/2.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/2.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/2.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/2.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/2.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/2.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/2.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/2.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.iterate_list [ OK ] HarrisMichaelListBasedSet/2.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/2.parallel_usage [ OK ] HarrisMichaelListBasedSet/2.parallel_usage (150 ms) [ RUN ] HarrisMichaelListBasedSet/2.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/2.parallel_usage_with_same_values (131 ms) [----------] 15 tests from HarrisMichaelListBasedSet/2 (283 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/3, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] HarrisMichaelListBasedSet/3.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/3.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/3.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (9 ms) [ RUN ] HarrisMichaelListBasedSet/3.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/3.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/3.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/3.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/3.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/3.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/3.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/3.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/3.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/3.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/3.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.iterate_list [ OK ] HarrisMichaelListBasedSet/3.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/3.parallel_usage [ OK ] HarrisMichaelListBasedSet/3.parallel_usage (146 ms) [ RUN ] HarrisMichaelListBasedSet/3.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/3.parallel_usage_with_same_values (147 ms) [----------] 15 tests from HarrisMichaelListBasedSet/3 (303 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/4, where TypeParam = xenium::reclamation::stamp_it [ RUN ] HarrisMichaelListBasedSet/4.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/4.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/4.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/4.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/4.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/4.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/4.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/4.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/4.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/4.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/4.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/4.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/4.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.iterate_list [ OK ] HarrisMichaelListBasedSet/4.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/4.parallel_usage [ OK ] HarrisMichaelListBasedSet/4.parallel_usage (143 ms) [ RUN ] HarrisMichaelListBasedSet/4.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/4.parallel_usage_with_same_values (135 ms) [----------] 15 tests from HarrisMichaelListBasedSet/4 (279 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] HarrisMichaelListBasedSet/5.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/5.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/5.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/5.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/5.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/5.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/5.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/5.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/5.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/5.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/5.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/5.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/5.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.iterate_list [ OK ] HarrisMichaelListBasedSet/5.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/5.parallel_usage [ OK ] HarrisMichaelListBasedSet/5.parallel_usage (131 ms) [ RUN ] HarrisMichaelListBasedSet/5.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/5.parallel_usage_with_same_values (131 ms) [----------] 15 tests from HarrisMichaelListBasedSet/5 (263 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/6, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] HarrisMichaelListBasedSet/6.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/6.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/6.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/6.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/6.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/6.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/6.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/6.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/6.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/6.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/6.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/6.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/6.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.iterate_list [ OK ] HarrisMichaelListBasedSet/6.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/6.parallel_usage [ OK ] HarrisMichaelListBasedSet/6.parallel_usage (143 ms) [ RUN ] HarrisMichaelListBasedSet/6.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/6.parallel_usage_with_same_values (131 ms) [----------] 15 tests from HarrisMichaelListBasedSet/6 (275 ms total) [----------] 15 tests from HarrisMichaelListBasedSet/7, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] HarrisMichaelListBasedSet/7.emplace_same_element_twice_fails_second_time [ OK ] HarrisMichaelListBasedSet/7.emplace_same_element_twice_fails_second_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.emplace_or_get_inserts_new_element_and_returns_iterator_to_it [ OK ] HarrisMichaelListBasedSet/7.emplace_or_get_inserts_new_element_and_returns_iterator_to_it (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element [ OK ] HarrisMichaelListBasedSet/7.emplace_or_get_does_not_insert_anything_and_returns_iterator_to_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.contains_returns_false_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/7.contains_returns_false_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.constains_returns_true_for_existing_element [ OK ] HarrisMichaelListBasedSet/7.constains_returns_true_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.find_returns_end_iterator_for_non_existing_element [ OK ] HarrisMichaelListBasedSet/7.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.find_returns_matching_iterator_for_existing_element [ OK ] HarrisMichaelListBasedSet/7.find_returns_matching_iterator_for_existing_element (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.comparer_policy_defines_order_of_entries [ OK ] HarrisMichaelListBasedSet/7.comparer_policy_defines_order_of_entries (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.erase_existing_element_succeeds [ OK ] HarrisMichaelListBasedSet/7.erase_existing_element_succeeds (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.erase_nonexisting_element_fails [ OK ] HarrisMichaelListBasedSet/7.erase_nonexisting_element_fails (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.erase_existing_element_twice_fails_the_seond_time [ OK ] HarrisMichaelListBasedSet/7.erase_existing_element_twice_fails_the_seond_time (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.erase_via_iterator_removes_entry_and_returns_iterator_to_successor [ OK ] HarrisMichaelListBasedSet/7.erase_via_iterator_removes_entry_and_returns_iterator_to_successor (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.iterate_list [ OK ] HarrisMichaelListBasedSet/7.iterate_list (0 ms) [ RUN ] HarrisMichaelListBasedSet/7.parallel_usage [ OK ] HarrisMichaelListBasedSet/7.parallel_usage (99 ms) [ RUN ] HarrisMichaelListBasedSet/7.parallel_usage_with_same_values [ OK ] HarrisMichaelListBasedSet/7.parallel_usage_with_same_values (135 ms) [----------] 15 tests from HarrisMichaelListBasedSet/7 (235 ms total) [----------] 7 tests from KirschBoundedKFifoQueue [ RUN ] KirschBoundedKFifoQueue.push_try_pop_returns_pushed_element [ OK ] KirschBoundedKFifoQueue.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschBoundedKFifoQueue.push_two_items_pop_them_in_FIFO_order [ OK ] KirschBoundedKFifoQueue.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschBoundedKFifoQueue.try_pop_returns_false_when_queue_is_empty [ OK ] KirschBoundedKFifoQueue.try_pop_returns_false_when_queue_is_empty (0 ms) [ RUN ] KirschBoundedKFifoQueue.try_push_returns_false_when_queue_is_full [ OK ] KirschBoundedKFifoQueue.try_push_returns_false_when_queue_is_full (0 ms) [ RUN ] KirschBoundedKFifoQueue.supports_unique_ptr [ OK ] KirschBoundedKFifoQueue.supports_unique_ptr (0 ms) [ RUN ] KirschBoundedKFifoQueue.deletes_remaining_unique_ptr_entries [ OK ] KirschBoundedKFifoQueue.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschBoundedKFifoQueue.parallel_usage [ OK ] KirschBoundedKFifoQueue.parallel_usage (143 ms) [----------] 7 tests from KirschBoundedKFifoQueue (143 ms total) [----------] 6 tests from KirschKFifoQueue/0, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] KirschKFifoQueue/0.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/0.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/0.supports_unique_ptr [ OK ] KirschKFifoQueue/0.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/0.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/0.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/0.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/0.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/0.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/0.push_large_number_of_entries_pop_them_in_FIFO_order (3 ms) [ RUN ] KirschKFifoQueue/0.parallel_usage [ OK ] KirschKFifoQueue/0.parallel_usage (175 ms) [----------] 6 tests from KirschKFifoQueue/0 (179 ms total) [----------] 6 tests from KirschKFifoQueue/1, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] KirschKFifoQueue/1.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/1.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/1.supports_unique_ptr [ OK ] KirschKFifoQueue/1.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/1.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/1.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/1.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/1.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/1.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/1.push_large_number_of_entries_pop_them_in_FIFO_order (4 ms) [ RUN ] KirschKFifoQueue/1.parallel_usage [ OK ] KirschKFifoQueue/1.parallel_usage (170 ms) [----------] 6 tests from KirschKFifoQueue/1 (176 ms total) [----------] 6 tests from KirschKFifoQueue/2, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] KirschKFifoQueue/2.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/2.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/2.supports_unique_ptr [ OK ] KirschKFifoQueue/2.supports_unique_ptr (3 ms) [ RUN ] KirschKFifoQueue/2.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/2.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/2.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/2.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/2.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/2.push_large_number_of_entries_pop_them_in_FIFO_order (2 ms) [ RUN ] KirschKFifoQueue/2.parallel_usage [ OK ] KirschKFifoQueue/2.parallel_usage (180 ms) [----------] 6 tests from KirschKFifoQueue/2 (191 ms total) [----------] 6 tests from KirschKFifoQueue/3, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] KirschKFifoQueue/3.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/3.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/3.supports_unique_ptr [ OK ] KirschKFifoQueue/3.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/3.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/3.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/3.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/3.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/3.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/3.push_large_number_of_entries_pop_them_in_FIFO_order (3 ms) [ RUN ] KirschKFifoQueue/3.parallel_usage [ OK ] KirschKFifoQueue/3.parallel_usage (227 ms) [----------] 6 tests from KirschKFifoQueue/3 (240 ms total) [----------] 6 tests from KirschKFifoQueue/4, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] KirschKFifoQueue/4.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/4.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/4.supports_unique_ptr [ OK ] KirschKFifoQueue/4.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/4.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/4.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/4.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/4.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/4.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/4.push_large_number_of_entries_pop_them_in_FIFO_order (3 ms) [ RUN ] KirschKFifoQueue/4.parallel_usage [ OK ] KirschKFifoQueue/4.parallel_usage (179 ms) [----------] 6 tests from KirschKFifoQueue/4 (191 ms total) [----------] 6 tests from KirschKFifoQueue/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] KirschKFifoQueue/5.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/5.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/5.supports_unique_ptr [ OK ] KirschKFifoQueue/5.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/5.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/5.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/5.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/5.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/5.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/5.push_large_number_of_entries_pop_them_in_FIFO_order (3 ms) [ RUN ] KirschKFifoQueue/5.parallel_usage [ OK ] KirschKFifoQueue/5.parallel_usage (167 ms) [----------] 6 tests from KirschKFifoQueue/5 (179 ms total) [----------] 6 tests from KirschKFifoQueue/6, where TypeParam = xenium::reclamation::stamp_it [ RUN ] KirschKFifoQueue/6.push_try_pop_returns_pushed_element [ OK ] KirschKFifoQueue/6.push_try_pop_returns_pushed_element (0 ms) [ RUN ] KirschKFifoQueue/6.supports_unique_ptr [ OK ] KirschKFifoQueue/6.supports_unique_ptr (0 ms) [ RUN ] KirschKFifoQueue/6.deletes_remaining_unique_ptr_entries [ OK ] KirschKFifoQueue/6.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] KirschKFifoQueue/6.push_two_items_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/6.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] KirschKFifoQueue/6.push_large_number_of_entries_pop_them_in_FIFO_order [ OK ] KirschKFifoQueue/6.push_large_number_of_entries_pop_them_in_FIFO_order (3 ms) [ RUN ] KirschKFifoQueue/6.parallel_usage [ OK ] KirschKFifoQueue/6.parallel_usage (191 ms) [----------] 6 tests from KirschKFifoQueue/6 (195 ms total) [----------] 4 tests from LeftRight [ RUN ] LeftRight.read_provides_initial_value [ OK ] LeftRight.read_provides_initial_value (0 ms) [ RUN ] LeftRight.read_can_return_value [ OK ] LeftRight.read_can_return_value (0 ms) [ RUN ] LeftRight.read_provides_updated_value [ OK ] LeftRight.read_provides_updated_value (0 ms) [ RUN ] LeftRight.parallel_usage [ OK ] LeftRight.parallel_usage (63 ms) [----------] 4 tests from LeftRight (63 ms total) [----------] 4 tests from marked_ptr [ RUN ] marked_ptr.get_returns_correct_pointer [ OK ] marked_ptr.get_returns_correct_pointer (0 ms) [ RUN ] marked_ptr.mark_returns_correct_value [ OK ] marked_ptr.mark_returns_correct_value (0 ms) [ RUN ] marked_ptr.deref_works_correctly [ OK ] marked_ptr.deref_works_correctly (0 ms) [ RUN ] marked_ptr.reset_sets_ptr_to_null [ OK ] marked_ptr.reset_sets_ptr_to_null (0 ms) [----------] 4 tests from marked_ptr (0 ms total) [----------] 4 tests from MichaelScottQueue/0, where TypeParam = xenium::reclamation::lock_free_ref_count<xenium::reclamation::lock_free_ref_count_traits<false,0ul> > [ RUN ] MichaelScottQueue/0.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/0.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/0.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/0.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/0.supports_move_only_types [ OK ] MichaelScottQueue/0.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/0.parallel_usage [ OK ] MichaelScottQueue/0.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/0 (63 ms total) [----------] 4 tests from MichaelScottQueue/1, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] MichaelScottQueue/1.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/1.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/1.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/1.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/1.supports_move_only_types [ OK ] MichaelScottQueue/1.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/1.parallel_usage [ OK ] MichaelScottQueue/1.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/1 (63 ms total) [----------] 4 tests from MichaelScottQueue/2, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] MichaelScottQueue/2.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/2.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/2.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/2.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/2.supports_move_only_types [ OK ] MichaelScottQueue/2.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/2.parallel_usage [ OK ] MichaelScottQueue/2.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/2 (63 ms total) [----------] 4 tests from MichaelScottQueue/3, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] MichaelScottQueue/3.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/3.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/3.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/3.push_two_items_pop_them_in_FIFO_order (21 ms) [ RUN ] MichaelScottQueue/3.supports_move_only_types [ OK ] MichaelScottQueue/3.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/3.parallel_usage [ OK ] MichaelScottQueue/3.parallel_usage (57 ms) [----------] 4 tests from MichaelScottQueue/3 (80 ms total) [----------] 4 tests from MichaelScottQueue/4, where TypeParam = xenium::reclamation::stamp_it [ RUN ] MichaelScottQueue/4.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/4.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/4.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/4.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/4.supports_move_only_types [ OK ] MichaelScottQueue/4.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/4.parallel_usage [ OK ] MichaelScottQueue/4.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/4 (63 ms total) [----------] 4 tests from MichaelScottQueue/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] MichaelScottQueue/5.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/5.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/5.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/5.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/5.supports_move_only_types [ OK ] MichaelScottQueue/5.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/5.parallel_usage [ OK ] MichaelScottQueue/5.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/5 (63 ms total) [----------] 4 tests from MichaelScottQueue/6, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] MichaelScottQueue/6.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/6.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/6.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/6.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/6.supports_move_only_types [ OK ] MichaelScottQueue/6.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/6.parallel_usage [ OK ] MichaelScottQueue/6.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/6 (63 ms total) [----------] 4 tests from MichaelScottQueue/7, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] MichaelScottQueue/7.push_try_pop_returns_pushed_element [ OK ] MichaelScottQueue/7.push_try_pop_returns_pushed_element (0 ms) [ RUN ] MichaelScottQueue/7.push_two_items_pop_them_in_FIFO_order [ OK ] MichaelScottQueue/7.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] MichaelScottQueue/7.supports_move_only_types [ OK ] MichaelScottQueue/7.supports_move_only_types (0 ms) [ RUN ] MichaelScottQueue/7.parallel_usage [ OK ] MichaelScottQueue/7.parallel_usage (63 ms) [----------] 4 tests from MichaelScottQueue/7 (64 ms total) [----------] 2 tests from Parameter [ RUN ] Parameter.type_param_extracts_type_from_specified_policy [ OK ] Parameter.type_param_extracts_type_from_specified_policy (0 ms) [ RUN ] Parameter.type_param_extracts_value_from_specified_policy [ OK ] Parameter.type_param_extracts_value_from_specified_policy (0 ms) [----------] 2 tests from Parameter (0 ms total) [----------] 6 tests from RamalheteQueue/0, where TypeParam = xenium::reclamation::lock_free_ref_count<xenium::reclamation::lock_free_ref_count_traits<false,0ul> > [ RUN ] RamalheteQueue/0.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/0.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/0.supports_unique_ptr [ OK ] RamalheteQueue/0.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/0.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/0.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/0.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/0.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/0.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/0.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/0.parallel_usage [ OK ] RamalheteQueue/0.parallel_usage (23 ms) [----------] 6 tests from RamalheteQueue/0 (23 ms total) [----------] 6 tests from RamalheteQueue/1, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] RamalheteQueue/1.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/1.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/1.supports_unique_ptr [ OK ] RamalheteQueue/1.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/1.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/1.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/1.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/1.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/1.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/1.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/1.parallel_usage [ OK ] RamalheteQueue/1.parallel_usage (55 ms) [----------] 6 tests from RamalheteQueue/1 (56 ms total) [----------] 6 tests from RamalheteQueue/2, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<2ul,2ul,100ul> > > [ RUN ] RamalheteQueue/2.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/2.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/2.supports_unique_ptr [ OK ] RamalheteQueue/2.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/2.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/2.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/2.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/2.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/2.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/2.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/2.parallel_usage [ OK ] RamalheteQueue/2.parallel_usage (63 ms) [----------] 6 tests from RamalheteQueue/2 (64 ms total) [----------] 6 tests from RamalheteQueue/3, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] RamalheteQueue/3.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/3.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/3.supports_unique_ptr [ OK ] RamalheteQueue/3.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/3.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/3.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/3.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/3.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/3.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/3.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/3.parallel_usage [ OK ] RamalheteQueue/3.parallel_usage (63 ms) [----------] 6 tests from RamalheteQueue/3 (63 ms total) [----------] 6 tests from RamalheteQueue/4, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] RamalheteQueue/4.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/4.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/4.supports_unique_ptr [ OK ] RamalheteQueue/4.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/4.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/4.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/4.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/4.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/4.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/4.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/4.parallel_usage [ OK ] RamalheteQueue/4.parallel_usage (63 ms) [----------] 6 tests from RamalheteQueue/4 (63 ms total) [----------] 6 tests from RamalheteQueue/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] RamalheteQueue/5.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/5.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/5.supports_unique_ptr [ OK ] RamalheteQueue/5.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/5.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/5.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/5.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/5.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/5.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/5.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/5.parallel_usage [ OK ] RamalheteQueue/5.parallel_usage (63 ms) [----------] 6 tests from RamalheteQueue/5 (63 ms total) [----------] 6 tests from RamalheteQueue/6, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] RamalheteQueue/6.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/6.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/6.supports_unique_ptr [ OK ] RamalheteQueue/6.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/6.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/6.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/6.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/6.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/6.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/6.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/6.parallel_usage [ OK ] RamalheteQueue/6.parallel_usage (62 ms) [----------] 6 tests from RamalheteQueue/6 (63 ms total) [----------] 6 tests from RamalheteQueue/7, where TypeParam = xenium::reclamation::stamp_it [ RUN ] RamalheteQueue/7.push_try_pop_returns_pushed_element [ OK ] RamalheteQueue/7.push_try_pop_returns_pushed_element (0 ms) [ RUN ] RamalheteQueue/7.supports_unique_ptr [ OK ] RamalheteQueue/7.supports_unique_ptr (0 ms) [ RUN ] RamalheteQueue/7.supports_trivially_copyable_types_smaller_than_a_pointer [ OK ] RamalheteQueue/7.supports_trivially_copyable_types_smaller_than_a_pointer (0 ms) [ RUN ] RamalheteQueue/7.deletes_remaining_unique_ptr_entries [ OK ] RamalheteQueue/7.deletes_remaining_unique_ptr_entries (0 ms) [ RUN ] RamalheteQueue/7.push_two_items_pop_them_in_FIFO_order [ OK ] RamalheteQueue/7.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] RamalheteQueue/7.parallel_usage [ OK ] RamalheteQueue/7.parallel_usage (40 ms) [----------] 6 tests from RamalheteQueue/7 (41 ms total) [----------] 10 tests from GenericEpochBased [ RUN ] GenericEpochBased.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] GenericEpochBased.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] GenericEpochBased.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] GenericEpochBased.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] GenericEpochBased.reset_releases_ownership_and_sets_pointer_to_null [ OK ] GenericEpochBased.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] GenericEpochBased.reclaim_releases_ownership_and_the_object_gets_deleted_when_advancing_two_epochs [ OK ] GenericEpochBased.reclaim_releases_ownership_and_the_object_gets_deleted_when_advancing_two_epochs (0 ms) [ RUN ] GenericEpochBased.supports_custom_deleters [ OK ] GenericEpochBased.supports_custom_deleters (0 ms) [ RUN ] GenericEpochBased.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] GenericEpochBased.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] GenericEpochBased.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] GenericEpochBased.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] GenericEpochBased.move_constructor_moves_ownership_and_resets_source_object [ OK ] GenericEpochBased.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] GenericEpochBased.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] GenericEpochBased.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] GenericEpochBased.move_assignment_moves_ownership_and_resets_source_object [ OK ] GenericEpochBased.move_assignment_moves_ownership_and_resets_source_object (0 ms) [----------] 10 tests from GenericEpochBased (0 ms total) [----------] 16 tests from HazardEras/0, where TypeParam = (anonymous namespace)::my_static_allocation_strategy [ RUN ] HazardEras/0.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] HazardEras/0.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] HazardEras/0.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] HazardEras/0.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] HazardEras/0.acquire_guard_acquires_pointer [ OK ] HazardEras/0.acquire_guard_acquires_pointer (0 ms) [ RUN ] HazardEras/0.additional_acquire_call_do_not_lead_to_overallocation_of_HEs [ OK ] HazardEras/0.additional_acquire_call_do_not_lead_to_overallocation_of_HEs (0 ms) [ RUN ] HazardEras/0.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal [ OK ] HazardEras/0.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal (0 ms) [ RUN ] HazardEras/0.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal [ OK ] HazardEras/0.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal (0 ms) [ RUN ] HazardEras/0.static_policy_throws_bad_hazard_era_alloc_when_HE_pool_is_exceeded [ OK ] HazardEras/0.static_policy_throws_bad_hazard_era_alloc_when_HE_pool_is_exceeded (9 ms) [ RUN ] HazardEras/0.reset_releases_ownership_and_sets_pointer_to_null [ OK ] HazardEras/0.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] HazardEras/0.reclaim_releases_ownership_and_deletes_object_because_no_HE_protects_it [ OK ] HazardEras/0.reclaim_releases_ownership_and_deletes_object_because_no_HE_protects_it (0 ms) [ RUN ] HazardEras/0.supports_custom_deleters [ OK ] HazardEras/0.supports_custom_deleters (0 ms) [ RUN ] HazardEras/0.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] HazardEras/0.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] HazardEras/0.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardEras/0.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardEras/0.move_constructor_moves_ownership_and_resets_source_object [ OK ] HazardEras/0.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardEras/0.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardEras/0.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardEras/0.move_assignment_moves_ownership_and_resets_source_object [ OK ] HazardEras/0.move_assignment_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardEras/0.dynamic_policy_can_protect_more_than_K_objects [ OK ] HazardEras/0.dynamic_policy_can_protect_more_than_K_objects (0 ms) [----------] 16 tests from HazardEras/0 (10 ms total) [----------] 16 tests from HazardEras/1, where TypeParam = (anonymous namespace)::my_dynamic_allocation_strategy [ RUN ] HazardEras/1.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] HazardEras/1.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] HazardEras/1.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] HazardEras/1.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] HazardEras/1.acquire_guard_acquires_pointer [ OK ] HazardEras/1.acquire_guard_acquires_pointer (0 ms) [ RUN ] HazardEras/1.additional_acquire_call_do_not_lead_to_overallocation_of_HEs [ OK ] HazardEras/1.additional_acquire_call_do_not_lead_to_overallocation_of_HEs (0 ms) [ RUN ] HazardEras/1.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal [ OK ] HazardEras/1.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal (0 ms) [ RUN ] HazardEras/1.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal [ OK ] HazardEras/1.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal (0 ms) [ RUN ] HazardEras/1.static_policy_throws_bad_hazard_era_alloc_when_HE_pool_is_exceeded [ OK ] HazardEras/1.static_policy_throws_bad_hazard_era_alloc_when_HE_pool_is_exceeded (0 ms) [ RUN ] HazardEras/1.reset_releases_ownership_and_sets_pointer_to_null [ OK ] HazardEras/1.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] HazardEras/1.reclaim_releases_ownership_and_deletes_object_because_no_HE_protects_it [ OK ] HazardEras/1.reclaim_releases_ownership_and_deletes_object_because_no_HE_protects_it (0 ms) [ RUN ] HazardEras/1.supports_custom_deleters [ OK ] HazardEras/1.supports_custom_deleters (0 ms) [ RUN ] HazardEras/1.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] HazardEras/1.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] HazardEras/1.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardEras/1.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardEras/1.move_constructor_moves_ownership_and_resets_source_object [ OK ] HazardEras/1.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardEras/1.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardEras/1.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardEras/1.move_assignment_moves_ownership_and_resets_source_object [ OK ] HazardEras/1.move_assignment_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardEras/1.dynamic_policy_can_protect_more_than_K_objects [ OK ] HazardEras/1.dynamic_policy_can_protect_more_than_K_objects (0 ms) [----------] 16 tests from HazardEras/1 (1 ms total) [----------] 17 tests from HazardPointer/0, where TypeParam = (anonymous namespace)::my_static_allocation_strategy [ RUN ] HazardPointer/0.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] HazardPointer/0.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] HazardPointer/0.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] HazardPointer/0.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] HazardPointer/0.acquire_guard_acquires_pointer [ OK ] HazardPointer/0.acquire_guard_acquires_pointer (0 ms) [ RUN ] HazardPointer/0.additional_acquire_call_do_not_lead_to_overallocation_of_HPs [ OK ] HazardPointer/0.additional_acquire_call_do_not_lead_to_overallocation_of_HPs (0 ms) [ RUN ] HazardPointer/0.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal [ OK ] HazardPointer/0.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal (0 ms) [ RUN ] HazardPointer/0.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal [ OK ] HazardPointer/0.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal (0 ms) [ RUN ] HazardPointer/0.static_allocation_strategy_throws_bad_hazard_pointer_when_HP_pool_is_exceeded [ OK ] HazardPointer/0.static_allocation_strategy_throws_bad_hazard_pointer_when_HP_pool_is_exceeded (0 ms) [ RUN ] HazardPointer/0.reset_releases_ownership_and_sets_pointer_to_null [ OK ] HazardPointer/0.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] HazardPointer/0.reclaim_releases_ownership_and_deletes_object_because_no_HP_protects_it [ OK ] HazardPointer/0.reclaim_releases_ownership_and_deletes_object_because_no_HP_protects_it (0 ms) [ RUN ] HazardPointer/0.supports_custom_deleters [ OK ] HazardPointer/0.supports_custom_deleters (0 ms) [ RUN ] HazardPointer/0.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] HazardPointer/0.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] HazardPointer/0.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardPointer/0.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardPointer/0.move_constructor_moves_ownership_and_resets_source_object [ OK ] HazardPointer/0.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardPointer/0.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardPointer/0.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardPointer/0.move_assignment_moves_ownership_and_resets_source_object [ OK ] HazardPointer/0.move_assignment_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardPointer/0.guard_ptr_protects_the_same_object_via_different_base_classes [ OK ] HazardPointer/0.guard_ptr_protects_the_same_object_via_different_base_classes (0 ms) [ RUN ] HazardPointer/0.dynamic_allocation_strategy_can_protect_more_than_K_objects [ OK ] HazardPointer/0.dynamic_allocation_strategy_can_protect_more_than_K_objects (0 ms) [----------] 17 tests from HazardPointer/0 (1 ms total) [----------] 17 tests from HazardPointer/1, where TypeParam = (anonymous namespace)::my_dynamic_allocation_strategy [ RUN ] HazardPointer/1.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] HazardPointer/1.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] HazardPointer/1.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] HazardPointer/1.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] HazardPointer/1.acquire_guard_acquires_pointer [ OK ] HazardPointer/1.acquire_guard_acquires_pointer (0 ms) [ RUN ] HazardPointer/1.additional_acquire_call_do_not_lead_to_overallocation_of_HPs [ OK ] HazardPointer/1.additional_acquire_call_do_not_lead_to_overallocation_of_HPs (0 ms) [ RUN ] HazardPointer/1.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal [ OK ] HazardPointer/1.acquire_if_equal_returns_true_and_acquires_pointer_when_values_are_equal (0 ms) [ RUN ] HazardPointer/1.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal [ OK ] HazardPointer/1.acquire_if_equal_returns_false_and_resets_guard_when_values_are_not_equal (0 ms) [ RUN ] HazardPointer/1.static_allocation_strategy_throws_bad_hazard_pointer_when_HP_pool_is_exceeded [ OK ] HazardPointer/1.static_allocation_strategy_throws_bad_hazard_pointer_when_HP_pool_is_exceeded (0 ms) [ RUN ] HazardPointer/1.reset_releases_ownership_and_sets_pointer_to_null [ OK ] HazardPointer/1.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] HazardPointer/1.reclaim_releases_ownership_and_deletes_object_because_no_HP_protects_it [ OK ] HazardPointer/1.reclaim_releases_ownership_and_deletes_object_because_no_HP_protects_it (0 ms) [ RUN ] HazardPointer/1.supports_custom_deleters [ OK ] HazardPointer/1.supports_custom_deleters (0 ms) [ RUN ] HazardPointer/1.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] HazardPointer/1.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] HazardPointer/1.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardPointer/1.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardPointer/1.move_constructor_moves_ownership_and_resets_source_object [ OK ] HazardPointer/1.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardPointer/1.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] HazardPointer/1.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] HazardPointer/1.move_assignment_moves_ownership_and_resets_source_object [ OK ] HazardPointer/1.move_assignment_moves_ownership_and_resets_source_object (0 ms) [ RUN ] HazardPointer/1.guard_ptr_protects_the_same_object_via_different_base_classes [ OK ] HazardPointer/1.guard_ptr_protects_the_same_object_via_different_base_classes (0 ms) [ RUN ] HazardPointer/1.dynamic_allocation_strategy_can_protect_more_than_K_objects [ OK ] HazardPointer/1.dynamic_allocation_strategy_can_protect_more_than_K_objects (3 ms) [----------] 17 tests from HazardPointer/1 (4 ms total) [----------] 12 tests from LockFreeRefCount [ RUN ] LockFreeRefCount.inital_ref_count_value_is_one [ OK ] LockFreeRefCount.inital_ref_count_value_is_one (0 ms) [ RUN ] LockFreeRefCount.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] LockFreeRefCount.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] LockFreeRefCount.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] LockFreeRefCount.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] LockFreeRefCount.reset_releases_ownership [ OK ] LockFreeRefCount.reset_releases_ownership (0 ms) [ RUN ] LockFreeRefCount.reclaim_releases_ownership_and_deletes_object_if_ref_count_drops_to_zero [ OK ] LockFreeRefCount.reclaim_releases_ownership_and_deletes_object_if_ref_count_drops_to_zero (0 ms) [ RUN ] LockFreeRefCount.guard_increments_ref_count [ OK ] LockFreeRefCount.guard_increments_ref_count (0 ms) [ RUN ] LockFreeRefCount.copy_constructor_increments_ref_count [ OK ] LockFreeRefCount.copy_constructor_increments_ref_count (0 ms) [ RUN ] LockFreeRefCount.move_constructor_does_not_increment_ref_count_and_resets_source [ OK ] LockFreeRefCount.move_constructor_does_not_increment_ref_count_and_resets_source (0 ms) [ RUN ] LockFreeRefCount.copy_assignment_increments_ref_count [ OK ] LockFreeRefCount.copy_assignment_increments_ref_count (0 ms) [ RUN ] LockFreeRefCount.move_assignment_does_not_increment_ref_count_and_resets_source [ OK ] LockFreeRefCount.move_assignment_does_not_increment_ref_count_and_resets_source (0 ms) [ RUN ] LockFreeRefCount.guard_destructor_decrements_ref_count [ OK ] LockFreeRefCount.guard_destructor_decrements_ref_count (0 ms) [ RUN ] LockFreeRefCount.parallel_allocation_and_deallocation_of_nodes [ OK ] LockFreeRefCount.parallel_allocation_and_deallocation_of_nodes (694 ms) [----------] 12 tests from LockFreeRefCount (695 ms total) [----------] 10 tests from QuiescentStateBased [ RUN ] QuiescentStateBased.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] QuiescentStateBased.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] QuiescentStateBased.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] QuiescentStateBased.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] QuiescentStateBased.reset_releases_ownership_and_sets_pointer_to_null [ OK ] QuiescentStateBased.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] QuiescentStateBased.reclaim_releases_ownership_and_the_object_gets_deleted_when_advancing_two_epochs [ OK ] QuiescentStateBased.reclaim_releases_ownership_and_the_object_gets_deleted_when_advancing_two_epochs (0 ms) [ RUN ] QuiescentStateBased.supports_custom_deleters [ OK ] QuiescentStateBased.supports_custom_deleters (0 ms) [ RUN ] QuiescentStateBased.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] QuiescentStateBased.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] QuiescentStateBased.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] QuiescentStateBased.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] QuiescentStateBased.move_constructor_moves_ownership_and_resets_source_object [ OK ] QuiescentStateBased.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] QuiescentStateBased.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] QuiescentStateBased.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] QuiescentStateBased.move_assignment_moves_ownership_and_resets_source_object [ OK ] QuiescentStateBased.move_assignment_moves_ownership_and_resets_source_object (0 ms) [----------] 10 tests from QuiescentStateBased (1 ms total) [----------] 10 tests from StampIt [ RUN ] StampIt.mark_returns_the_same_mark_as_the_original_marked_ptr [ OK ] StampIt.mark_returns_the_same_mark_as_the_original_marked_ptr (0 ms) [ RUN ] StampIt.get_returns_the_same_pointer_as_the_original_marked_ptr [ OK ] StampIt.get_returns_the_same_pointer_as_the_original_marked_ptr (0 ms) [ RUN ] StampIt.reset_releases_ownership_and_sets_pointer_to_null [ OK ] StampIt.reset_releases_ownership_and_sets_pointer_to_null (0 ms) [ RUN ] StampIt.reclaim_releases_ownership_and_the_object_gets_deleted [ OK ] StampIt.reclaim_releases_ownership_and_the_object_gets_deleted (0 ms) [ RUN ] StampIt.supports_custom_deleters [ OK ] StampIt.supports_custom_deleters (0 ms) [ RUN ] StampIt.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it [ OK ] StampIt.object_cannot_be_reclaimed_as_long_as_another_guard_protects_it (0 ms) [ RUN ] StampIt.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] StampIt.copy_constructor_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] StampIt.move_constructor_moves_ownership_and_resets_source_object [ OK ] StampIt.move_constructor_moves_ownership_and_resets_source_object (0 ms) [ RUN ] StampIt.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed [ OK ] StampIt.copy_assignment_leads_to_shared_ownership_preventing_the_object_from_beeing_reclaimed (0 ms) [ RUN ] StampIt.move_assignment_moves_ownership_and_resets_source_object [ OK ] StampIt.move_assignment_moves_ownership_and_resets_source_object (0 ms) [----------] 10 tests from StampIt (0 ms total) [----------] 1 test from Sanitize/0, where TypeParam = xenium::reclamation::lock_free_ref_count<xenium::reclamation::lock_free_ref_count_traits<false,0ul> > [ RUN ] Sanitize/0.guard_ptrs [ OK ] Sanitize/0.guard_ptrs (354 ms) [----------] 1 test from Sanitize/0 (354 ms total) [----------] 1 test from Sanitize/1, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3ul,2ul,1ul> > > [ RUN ] Sanitize/1.guard_ptrs [ OK ] Sanitize/1.guard_ptrs (270 ms) [----------] 1 test from Sanitize/1 (270 ms total) [----------] 1 test from Sanitize/2, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3ul,2ul,1ul> > > [ RUN ] Sanitize/2.guard_ptrs [ OK ] Sanitize/2.guard_ptrs (106 ms) [----------] 1 test from Sanitize/2 (107 ms total) [----------] 1 test from Sanitize/3, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] Sanitize/3.guard_ptrs [ OK ] Sanitize/3.guard_ptrs (189 ms) [----------] 1 test from Sanitize/3 (189 ms total) [----------] 1 test from Sanitize/4, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] Sanitize/4.guard_ptrs [ OK ] Sanitize/4.guard_ptrs (70 ms) [----------] 1 test from Sanitize/4 (70 ms total) [----------] 1 test from Sanitize/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<1ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] Sanitize/5.guard_ptrs [ OK ] Sanitize/5.guard_ptrs (333 ms) [----------] 1 test from Sanitize/5 (333 ms total) [----------] 1 test from Sanitize/6, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] Sanitize/6.guard_ptrs [ OK ] Sanitize/6.guard_ptrs (479 ms) [----------] 1 test from Sanitize/6 (479 ms total) [----------] 1 test from Sanitize/7, where TypeParam = xenium::reclamation::stamp_it [ RUN ] Sanitize/7.guard_ptrs [ OK ] Sanitize/7.guard_ptrs (167 ms) [----------] 1 test from Sanitize/7 (167 ms total) [----------] 8 tests from SeqLock [ RUN ] SeqLock.load_returns_initial_value [ OK ] SeqLock.load_returns_initial_value (0 ms) [ RUN ] SeqLock.load_returns_previously_stored_value [ OK ] SeqLock.load_returns_previously_stored_value (0 ms) [ RUN ] SeqLock.load_returns_previously_stored_value_with_multiple_slots [ OK ] SeqLock.load_returns_previously_stored_value_with_multiple_slots (0 ms) [ RUN ] SeqLock.update_functor_receives_latest_value_as_parameter [ OK ] SeqLock.update_functor_receives_latest_value_as_parameter (0 ms) [ RUN ] SeqLock.update_functor_receives_latest_value_as_parameter_with_multple_slots [ OK ] SeqLock.update_functor_receives_latest_value_as_parameter_with_multple_slots (0 ms) [ RUN ] SeqLock.read_returns_value_stored_by_update [ OK ] SeqLock.read_returns_value_stored_by_update (0 ms) [ RUN ] SeqLock.read_returns_value_stored_by_update_with_multiple_slots [ OK ] SeqLock.read_returns_value_stored_by_update_with_multiple_slots (0 ms) [ RUN ] SeqLock.parallel_usage [ OK ] SeqLock.parallel_usage (51 ms) [----------] 8 tests from SeqLock (51 ms total) [----------] 8 tests from VyukovBoundedQueue [ RUN ] VyukovBoundedQueue.push_try_pop_returns_pushed_element [ OK ] VyukovBoundedQueue.push_try_pop_returns_pushed_element (0 ms) [ RUN ] VyukovBoundedQueue.push_try_pop_weak_returns_pushed_element [ OK ] VyukovBoundedQueue.push_try_pop_weak_returns_pushed_element (0 ms) [ RUN ] VyukovBoundedQueue.push_two_items_pop_them_in_FIFO_order [ OK ] VyukovBoundedQueue.push_two_items_pop_them_in_FIFO_order (0 ms) [ RUN ] VyukovBoundedQueue.try_pop_returns_false_when_queue_is_empty [ OK ] VyukovBoundedQueue.try_pop_returns_false_when_queue_is_empty (0 ms) [ RUN ] VyukovBoundedQueue.try_push_returns_false_when_queue_is_full [ OK ] VyukovBoundedQueue.try_push_returns_false_when_queue_is_full (0 ms) [ RUN ] VyukovBoundedQueue.supports_move_only_types [ OK ] VyukovBoundedQueue.supports_move_only_types (0 ms) [ RUN ] VyukovBoundedQueue.parallel_usage [ OK ] VyukovBoundedQueue.parallel_usage (315 ms) [ RUN ] VyukovBoundedQueue.parallel_usage_of_weak_operations [ OK ] VyukovBoundedQueue.parallel_usage_of_weak_operations (77 ms) [----------] 8 tests from VyukovBoundedQueue (393 ms total) [----------] 30 tests from VyukovHashMap/0, where TypeParam = xenium::reclamation::hazard_pointer<xenium::reclamation::hazard_pointer_traits<xenium::reclamation::hp_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] VyukovHashMap/0.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/0.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/0.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/0.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/0.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/0.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/0.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/0.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/0.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/0.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/0.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/0.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/0.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/0.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/0.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/0.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/0.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/0.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/0.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/0.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/0.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/0.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/0.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/0.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/0.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/0.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/0.map_grows_if_needed [ OK ] VyukovHashMap/0.map_grows_if_needed (18 ms) [ RUN ] VyukovHashMap/0.with_managed_pointer_value [ OK ] VyukovHashMap/0.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/0.with_string_value [ OK ] VyukovHashMap/0.with_string_value (0 ms) [ RUN ] VyukovHashMap/0.with_string_key [ OK ] VyukovHashMap/0.with_string_key (0 ms) [ RUN ] VyukovHashMap/0.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/0.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/0.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/0.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/0.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/0.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/0.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/0.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/0.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/0.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/0.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/0.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/0.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/0.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/0.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/0.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/0.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/0.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/0.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/0.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/0.parallel_usage [ OK ] VyukovHashMap/0.parallel_usage (174 ms) [ RUN ] VyukovHashMap/0.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/0.parallel_usage_with_nontrivial_types (163 ms) [ RUN ] VyukovHashMap/0.parallel_usage_with_same_values [ OK ] VyukovHashMap/0.parallel_usage_with_same_values (115 ms) [----------] 30 tests from VyukovHashMap/0 (478 ms total) [----------] 30 tests from VyukovHashMap/1, where TypeParam = xenium::reclamation::hazard_eras<xenium::reclamation::hazard_era_traits<xenium::reclamation::he_allocation::static_strategy<3ul,2ul,100ul> > > [ RUN ] VyukovHashMap/1.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/1.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/1.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/1.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/1.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/1.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/1.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/1.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/1.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/1.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/1.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/1.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/1.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/1.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/1.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/1.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/1.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/1.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/1.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/1.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/1.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/1.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/1.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/1.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/1.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/1.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/1.map_grows_if_needed [ OK ] VyukovHashMap/1.map_grows_if_needed (35 ms) [ RUN ] VyukovHashMap/1.with_managed_pointer_value [ OK ] VyukovHashMap/1.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/1.with_string_value [ OK ] VyukovHashMap/1.with_string_value (0 ms) [ RUN ] VyukovHashMap/1.with_string_key [ OK ] VyukovHashMap/1.with_string_key (0 ms) [ RUN ] VyukovHashMap/1.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/1.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/1.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/1.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/1.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/1.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/1.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/1.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/1.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/1.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/1.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/1.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/1.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/1.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/1.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/1.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/1.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/1.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/1.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/1.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/1.parallel_usage [ OK ] VyukovHashMap/1.parallel_usage (216 ms) [ RUN ] VyukovHashMap/1.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/1.parallel_usage_with_nontrivial_types (147 ms) [ RUN ] VyukovHashMap/1.parallel_usage_with_same_values [ OK ] VyukovHashMap/1.parallel_usage_with_same_values (115 ms) [----------] 30 tests from VyukovHashMap/1 (527 ms total) [----------] 30 tests from VyukovHashMap/2, where TypeParam = xenium::reclamation::quiescent_state_based [ RUN ] VyukovHashMap/2.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/2.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/2.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/2.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/2.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/2.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/2.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/2.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/2.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/2.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/2.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/2.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/2.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/2.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/2.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/2.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/2.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/2.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/2.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/2.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/2.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/2.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/2.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/2.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/2.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/2.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/2.map_grows_if_needed [ OK ] VyukovHashMap/2.map_grows_if_needed (41 ms) [ RUN ] VyukovHashMap/2.with_managed_pointer_value [ OK ] VyukovHashMap/2.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/2.with_string_value [ OK ] VyukovHashMap/2.with_string_value (0 ms) [ RUN ] VyukovHashMap/2.with_string_key [ OK ] VyukovHashMap/2.with_string_key (0 ms) [ RUN ] VyukovHashMap/2.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/2.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/2.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/2.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/2.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/2.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/2.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/2.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/2.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/2.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/2.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/2.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/2.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/2.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/2.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/2.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/2.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/2.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/2.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/2.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/2.parallel_usage [ OK ] VyukovHashMap/2.parallel_usage (115 ms) [ RUN ] VyukovHashMap/2.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/2.parallel_usage_with_nontrivial_types (115 ms) [ RUN ] VyukovHashMap/2.parallel_usage_with_same_values [ OK ] VyukovHashMap/2.parallel_usage_with_same_values (121 ms) [----------] 30 tests from VyukovHashMap/2 (409 ms total) [----------] 30 tests from VyukovHashMap/3, where TypeParam = xenium::reclamation::stamp_it [ RUN ] VyukovHashMap/3.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/3.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/3.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/3.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/3.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/3.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/3.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/3.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/3.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/3.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/3.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/3.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/3.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/3.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/3.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/3.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/3.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/3.find_returns_iterator_to_existing_element (1 ms) [ RUN ] VyukovHashMap/3.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/3.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/3.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/3.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/3.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/3.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/3.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/3.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/3.map_grows_if_needed [ OK ] VyukovHashMap/3.map_grows_if_needed (44 ms) [ RUN ] VyukovHashMap/3.with_managed_pointer_value [ OK ] VyukovHashMap/3.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/3.with_string_value [ OK ] VyukovHashMap/3.with_string_value (0 ms) [ RUN ] VyukovHashMap/3.with_string_key [ OK ] VyukovHashMap/3.with_string_key (0 ms) [ RUN ] VyukovHashMap/3.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/3.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/3.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/3.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/3.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/3.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/3.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/3.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/3.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/3.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/3.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/3.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/3.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/3.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/3.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/3.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/3.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/3.iterator_covers_all_entries_in_densely_populated_map (1 ms) [ RUN ] VyukovHashMap/3.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/3.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/3.parallel_usage [ OK ] VyukovHashMap/3.parallel_usage (126 ms) [ RUN ] VyukovHashMap/3.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/3.parallel_usage_with_nontrivial_types (127 ms) [ RUN ] VyukovHashMap/3.parallel_usage_with_same_values [ OK ] VyukovHashMap/3.parallel_usage_with_same_values (131 ms) [----------] 30 tests from VyukovHashMap/3 (442 ms total) [----------] 30 tests from VyukovHashMap/4, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] VyukovHashMap/4.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/4.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/4.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/4.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/4.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/4.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/4.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/4.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/4.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/4.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/4.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/4.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/4.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/4.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/4.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/4.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/4.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/4.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/4.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/4.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/4.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/4.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/4.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/4.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/4.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/4.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/4.map_grows_if_needed [ OK ] VyukovHashMap/4.map_grows_if_needed (36 ms) [ RUN ] VyukovHashMap/4.with_managed_pointer_value [ OK ] VyukovHashMap/4.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/4.with_string_value [ OK ] VyukovHashMap/4.with_string_value (0 ms) [ RUN ] VyukovHashMap/4.with_string_key [ OK ] VyukovHashMap/4.with_string_key (0 ms) [ RUN ] VyukovHashMap/4.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/4.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/4.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/4.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/4.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/4.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/4.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/4.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/4.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/4.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/4.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/4.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/4.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/4.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/4.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/4.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/4.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/4.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/4.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/4.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/4.parallel_usage [ OK ] VyukovHashMap/4.parallel_usage (198 ms) [ RUN ] VyukovHashMap/4.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/4.parallel_usage_with_nontrivial_types (143 ms) [ RUN ] VyukovHashMap/4.parallel_usage_with_same_values [ OK ] VyukovHashMap/4.parallel_usage_with_same_values (131 ms) [----------] 30 tests from VyukovHashMap/4 (519 ms total) [----------] 30 tests from VyukovHashMap/5, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::all_threads,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)1> > [ RUN ] VyukovHashMap/5.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/5.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/5.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/5.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/5.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/5.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/5.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/5.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/5.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/5.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/5.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/5.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/5.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/5.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/5.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/5.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/5.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/5.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/5.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/5.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/5.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/5.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/5.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/5.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/5.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/5.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/5.map_grows_if_needed [ OK ] VyukovHashMap/5.map_grows_if_needed (37 ms) [ RUN ] VyukovHashMap/5.with_managed_pointer_value [ OK ] VyukovHashMap/5.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/5.with_string_value [ OK ] VyukovHashMap/5.with_string_value (0 ms) [ RUN ] VyukovHashMap/5.with_string_key [ OK ] VyukovHashMap/5.with_string_key (0 ms) [ RUN ] VyukovHashMap/5.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/5.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/5.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/5.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/5.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/5.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/5.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/5.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/5.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/5.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/5.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/5.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/5.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/5.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/5.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/5.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/5.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/5.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/5.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/5.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/5.parallel_usage [ OK ] VyukovHashMap/5.parallel_usage (176 ms) [ RUN ] VyukovHashMap/5.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/5.parallel_usage_with_nontrivial_types (128 ms) [ RUN ] VyukovHashMap/5.parallel_usage_with_same_values [ OK ] VyukovHashMap/5.parallel_usage_with_same_values (96 ms) [----------] 30 tests from VyukovHashMap/5 (448 ms total) [----------] 30 tests from VyukovHashMap/6, where TypeParam = xenium::reclamation::generic_epoch_based<xenium::reclamation::generic_epoch_based_traits<10ul,xenium::reclamation::scan::one_thread,xenium::reclamation::abandon::never,(xenium::reclamation::region_extension)0> > [ RUN ] VyukovHashMap/6.emplace_returns_true_for_successful_insert [ OK ] VyukovHashMap/6.emplace_returns_true_for_successful_insert (0 ms) [ RUN ] VyukovHashMap/6.emplace_returns_false_for_failed_insert [ OK ] VyukovHashMap/6.emplace_returns_false_for_failed_insert (0 ms) [ RUN ] VyukovHashMap/6.get_or_emplace_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/6.get_or_emplace_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/6.get_or_emplace_returns_accessor_to_existing_element [ OK ] VyukovHashMap/6.get_or_emplace_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/6.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element [ OK ] VyukovHashMap/6.get_or_emplace_lazy_calls_factory_and_returns_accessor_to_newly_inserted_element (0 ms) [ RUN ] VyukovHashMap/6.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element [ OK ] VyukovHashMap/6.get_or_emplace_lazy_does_not_call_factory_and_returns_accessor_to_existing_element (0 ms) [ RUN ] VyukovHashMap/6.try_get_value_returns_false_key_is_not_found [ OK ] VyukovHashMap/6.try_get_value_returns_false_key_is_not_found (0 ms) [ RUN ] VyukovHashMap/6.try_get_value_returns_true_and_sets_result_if_matching_entry_exists [ OK ] VyukovHashMap/6.try_get_value_returns_true_and_sets_result_if_matching_entry_exists (0 ms) [ RUN ] VyukovHashMap/6.find_returns_iterator_to_existing_element [ OK ] VyukovHashMap/6.find_returns_iterator_to_existing_element (0 ms) [ RUN ] VyukovHashMap/6.find_returns_end_iterator_for_non_existing_element [ OK ] VyukovHashMap/6.find_returns_end_iterator_for_non_existing_element (0 ms) [ RUN ] VyukovHashMap/6.erase_nonexisting_element_returns_false [ OK ] VyukovHashMap/6.erase_nonexisting_element_returns_false (0 ms) [ RUN ] VyukovHashMap/6.erase_existing_element_returns_true_and_removes_element [ OK ] VyukovHashMap/6.erase_existing_element_returns_true_and_removes_element (0 ms) [ RUN ] VyukovHashMap/6.extract_existing_element_returns_true_and_removes_element_and_returns_old_value [ OK ] VyukovHashMap/6.extract_existing_element_returns_true_and_removes_element_and_returns_old_value (0 ms) [ RUN ] VyukovHashMap/6.map_grows_if_needed [ OK ] VyukovHashMap/6.map_grows_if_needed (36 ms) [ RUN ] VyukovHashMap/6.with_managed_pointer_value [ OK ] VyukovHashMap/6.with_managed_pointer_value (0 ms) [ RUN ] VyukovHashMap/6.with_string_value [ OK ] VyukovHashMap/6.with_string_value (0 ms) [ RUN ] VyukovHashMap/6.with_string_key [ OK ] VyukovHashMap/6.with_string_key (0 ms) [ RUN ] VyukovHashMap/6.with_string_key_and_managed_ptr_value [ OK ] VyukovHashMap/6.with_string_key_and_managed_ptr_value (0 ms) [ RUN ] VyukovHashMap/6.emplace_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/6.emplace_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/6.erase_unlocks_bucket_in_case_of_exception [ OK ] VyukovHashMap/6.erase_unlocks_bucket_in_case_of_exception (0 ms) [ RUN ] VyukovHashMap/6.correctly_handles_hash_collisions_of_nontrivial_keys [ OK ] VyukovHashMap/6.correctly_handles_hash_collisions_of_nontrivial_keys (0 ms) [ RUN ] VyukovHashMap/6.begin_returns_end_iterator_for_empty_map [ OK ] VyukovHashMap/6.begin_returns_end_iterator_for_empty_map (0 ms) [ RUN ] VyukovHashMap/6.begin_returns_iterator_to_first_entry [ OK ] VyukovHashMap/6.begin_returns_iterator_to_first_entry (0 ms) [ RUN ] VyukovHashMap/6.drain_densely_populated_map_using_erase [ OK ] VyukovHashMap/6.drain_densely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/6.drain_sparsely_populated_map_using_erase [ OK ] VyukovHashMap/6.drain_sparsely_populated_map_using_erase (0 ms) [ RUN ] VyukovHashMap/6.iterator_covers_all_entries_in_densely_populated_map [ OK ] VyukovHashMap/6.iterator_covers_all_entries_in_densely_populated_map (0 ms) [ RUN ] VyukovHashMap/6.iterator_covers_all_entries_in_sparsely_populated_map [ OK ] VyukovHashMap/6.iterator_covers_all_entries_in_sparsely_populated_map (0 ms) [ RUN ] VyukovHashMap/6.parallel_usage [ OK ] VyukovHashMap/6.parallel_usage (167 ms) [ RUN ] VyukovHashMap/6.parallel_usage_with_nontrivial_types [ OK ] VyukovHashMap/6.parallel_usage_with_nontrivial_types (167 ms) [ RUN ] VyukovHashMap/6.parallel_usage_with_same_values [ OK ] VyukovHashMap/6.parallel_usage_with_same_values (95 ms) [----------] 30 tests from VyukovHashMap/6 (479 ms total) [----------] Global test environment tear-down [==========] 819 tests from 71 test suites ran. (13924 ms total) [ PASSED ] 819 tests. make[1]: Leaving directory '/build/reproducible-path/xenium-0.0.2+ds' create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install dh_install dh_installdocs dh_installchangelogs dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_dwz -a dh_strip -a dh_makeshlibs -a dh_shlibdeps -a dh_installdeb dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package 'libxenium-dev' in '../libxenium-dev_0.0.2+ds-8_amd64.deb'. dpkg-deb: building package 'libxenium-doc' in '../libxenium-doc_0.0.2+ds-8_all.deb'. dpkg-genbuildinfo --build=binary -O../xenium_0.0.2+ds-8_amd64.buildinfo dpkg-genchanges --build=binary -O../xenium_0.0.2+ds-8_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . 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/3103631 and its subdirectories I: Current time: Fri Mar 7 01:52:26 -12 2025 I: pbuilder-time-stamp: 1741355546 Fri Mar 7 13:52:28 UTC 2025 I: 1st build successful. Starting 2nd build on remote node infom02-amd64.debian.net. Fri Mar 7 13:52:28 UTC 2025 I: Preparing to do remote build '2' on infom02-amd64.debian.net. Fri Mar 7 13:56:36 UTC 2025 I: Deleting $TMPDIR on infom02-amd64.debian.net. Fri Mar 7 13:56:37 UTC 2025 I: xenium_0.0.2+ds-8_amd64.changes: Format: 1.8 Date: Tue, 06 Dec 2022 20:12:23 +0100 Source: xenium Binary: libxenium-dev libxenium-doc Architecture: amd64 all Version: 0.0.2+ds-8 Distribution: unstable Urgency: medium Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org> Changed-By: Andreas Tille <tille@debian.org> Description: libxenium-dev - concurrent data structures and memory reclamation algorithms libxenium-doc - HTML documentation for the xenium library Changes: xenium (0.0.2+ds-8) unstable; urgency=medium . * Team upload. * Fix watch file Checksums-Sha1: 044ddde635c4ecde8317d25c07e7d3c9348904be 63428 libxenium-dev_0.0.2+ds-8_amd64.deb e129293d975950d950c5ddc08df3fdf4dbe0d036 284504 libxenium-doc_0.0.2+ds-8_all.deb 2d695039b74c437492dbaae009410a8ee57d0e3a 6360 xenium_0.0.2+ds-8_amd64.buildinfo Checksums-Sha256: 953d8b9cd9cd81262c2e3e48fad7cb3620d1365e4f01ed716cb950e6195d6855 63428 libxenium-dev_0.0.2+ds-8_amd64.deb 51be4e6e20e55cc7602db59eac12294e9512c6f81cd0d24c9e8116afa4cb1c33 284504 libxenium-doc_0.0.2+ds-8_all.deb 0fe8a7b5a10b1acd9261c94ab265fddd8de58f33521891b6cc8869a524d91f11 6360 xenium_0.0.2+ds-8_amd64.buildinfo Files: 347a3a78ab6943c3e20903a443b9fdbb 63428 libdevel optional libxenium-dev_0.0.2+ds-8_amd64.deb b2a0f18c72e6e55048523cbc673f09cd 284504 doc optional libxenium-doc_0.0.2+ds-8_all.deb e55f7cc3c58091fdc19594ce19ebff4e 6360 science optional xenium_0.0.2+ds-8_amd64.buildinfo Fri Mar 7 13:56:38 UTC 2025 I: diffoscope 289 will be used to compare the two builds: Running as unit: rb-diffoscope-amd64_35-50087.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.OH2e4Dbj/xenium_0.0.2+ds-8.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.OH2e4Dbj/xenium_0.0.2+ds-8.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.OH2e4Dbj/xenium_0.0.2+ds-8.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.OH2e4Dbj/b1/xenium_0.0.2+ds-8_amd64.changes /srv/reproducible-results/rbuild-debian/r-b-build.OH2e4Dbj/b2/xenium_0.0.2+ds-8_amd64.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call diffoscope.comparators.binary.FilesystemFile ## main (total time: 0.007s) 0.007s 2 calls outputs 0.000s 1 call cleanup Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 421ms CPU time consumed: 423ms Fri Mar 7 13:56:39 UTC 2025 I: diffoscope 289 found no differences in the changes files, and a .buildinfo file also exists. Fri Mar 7 13:56:39 UTC 2025 I: xenium from trixie built successfully and reproducibly on amd64. Fri Mar 7 13:56:40 UTC 2025 I: Submitting .buildinfo files to external archives: Fri Mar 7 13:56:40 UTC 2025 I: Submitting 8.0K b1/xenium_0.0.2+ds-8_amd64.buildinfo.asc Fri Mar 7 13:57:10 UTC 2025 E: Could not submit buildinfo from b1 to http://buildinfo.debian.net/api/submit Fri Mar 7 13:57:10 UTC 2025 I: Submitting 8.0K b2/xenium_0.0.2+ds-8_amd64.buildinfo.asc Fri Mar 7 13:57:32 UTC 2025 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Fri Mar 7 13:57:32 UTC 2025 I: Done submitting .buildinfo files. Fri Mar 7 13:57:32 UTC 2025 I: Removing signed xenium_0.0.2+ds-8_amd64.buildinfo.asc files: removed './b1/xenium_0.0.2+ds-8_amd64.buildinfo.asc' removed './b2/xenium_0.0.2+ds-8_amd64.buildinfo.asc'