Warning: Permanently added '2620:52:3:1:dead:beef:cafe:c1c9' (ED25519) to the list of known hosts. cmd: ['dist-git-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo rc: 0 stdout: stderr: INFO: Reading stdout from command: git rev-parse --abbrev-ref HEAD INFO: Reading stdout from command: git rev-parse HEAD INFO: Reading sources specification file: sources Running (timeout=172800): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo/gloo.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1739580523.198863 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.0 starting (python version = 3.13.0, NVR = mock-6.0-1.fc41), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo/gloo.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1739580523.198863 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo/gloo.spec) Config(fedora-41-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.0 INFO: Mock Version: 6.0 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-x86_64-bootstrap-1739580523.198863/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using container image: registry.fedoraproject.org/fedora:41 INFO: Pulling image: registry.fedoraproject.org/fedora:41 INFO: Tagging container image as mock-bootstrap-13556a9b-f415-422d-97e7-be6fb0b51317 INFO: Checking that db01c493fd9b02d2234320702949f37c483a3c4122814c75400755b5dcf019d4 image matches host's architecture INFO: Copy content of container db01c493fd9b02d2234320702949f37c483a3c4122814c75400755b5dcf019d4 to /var/lib/mock/fedora-41-x86_64-bootstrap-1739580523.198863/root INFO: mounting db01c493fd9b02d2234320702949f37c483a3c4122814c75400755b5dcf019d4 with podman image mount INFO: image db01c493fd9b02d2234320702949f37c483a3c4122814c75400755b5dcf019d4 as /var/lib/containers/storage/overlay/896bc20587a190a71e4026ed86729b22141bcd04002e06810998fbf95515e040/merged INFO: umounting image db01c493fd9b02d2234320702949f37c483a3c4122814c75400755b5dcf019d4 (/var/lib/containers/storage/overlay/896bc20587a190a71e4026ed86729b22141bcd04002e06810998fbf95515e040/merged) with podman image umount INFO: Removing image mock-bootstrap-13556a9b-f415-422d-97e7-be6fb0b51317 INFO: Package manager dnf5 detected and used (fallback) INFO: Not updating bootstrap chroot, bootstrap_image_ready=True Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-x86_64-1739580523.198863/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-1.fc41.x86_64 rpm-sequoia-1.7.0-5.fc41.x86_64 dnf5-5.2.8.1-3.fc41.x86_64 dnf5-plugins-5.2.8.1-3.fc41.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: updates 100% | 9.6 MiB/s | 10.7 MiB | 00m01s fedora 100% | 14.2 MiB/s | 35.5 MiB | 00m03s Copr repository 100% | 1.3 MiB/s | 116.5 KiB | 00m00s Additional repo copr_rezso_CUDA 100% | 514.2 KiB/s | 44.2 KiB | 00m00s Additional repo http_developer_downloa 100% | 1.7 MiB/s | 533.0 KiB | 00m00s Additional repo http_developer_downloa 100% | 1.2 MiB/s | 386.7 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 5.2.32-1.fc41 fedora 8.2 MiB bzip2 x86_64 1.0.8-19.fc41 fedora 95.7 KiB coreutils x86_64 9.5-11.fc41 updates 5.7 MiB cpio x86_64 2.15-2.fc41 fedora 1.1 MiB diffutils x86_64 3.10-8.fc41 fedora 1.6 MiB fedora-release-common noarch 41-29 updates 19.7 KiB findutils x86_64 1:4.10.0-4.fc41 fedora 1.8 MiB gawk x86_64 5.3.0-4.fc41 fedora 1.7 MiB glibc-minimal-langpack x86_64 2.40-21.fc41 updates 0.0 B grep x86_64 3.11-9.fc41 fedora 1.0 MiB gzip x86_64 1.13-2.fc41 fedora 389.0 KiB info x86_64 7.1-3.fc41 fedora 361.8 KiB patch x86_64 2.7.6-25.fc41 fedora 266.7 KiB redhat-rpm-config noarch 293-1.fc41 fedora 183.5 KiB rpm-build x86_64 4.20.0-1.fc41 fedora 194.3 KiB sed x86_64 4.9-3.fc41 fedora 861.5 KiB shadow-utils x86_64 2:4.15.1-12.fc41 fedora 4.1 MiB tar x86_64 2:1.35-4.fc41 fedora 2.9 MiB unzip x86_64 6.0-64.fc41 fedora 386.8 KiB util-linux x86_64 2.40.4-1.fc41 updates 3.6 MiB which x86_64 2.21-42.fc41 fedora 80.2 KiB xz x86_64 1:5.6.2-2.fc41 fedora 1.2 MiB Installing dependencies: add-determinism x86_64 0.3.6-3.fc41 updates 2.4 MiB alternatives x86_64 1.31-1.fc41 updates 64.8 KiB ansible-srpm-macros noarch 1-16.fc41 fedora 35.7 KiB audit-libs x86_64 4.0.3-1.fc41 updates 351.3 KiB authselect x86_64 1.5.0-8.fc41 fedora 157.6 KiB authselect-libs x86_64 1.5.0-8.fc41 fedora 822.2 KiB basesystem noarch 11-21.fc41 fedora 0.0 B binutils x86_64 2.43.1-5.fc41 updates 27.4 MiB build-reproducibility-srpm-macros noarch 0.3.6-3.fc41 updates 735.0 B bzip2-libs x86_64 1.0.8-19.fc41 fedora 80.7 KiB ca-certificates noarch 2024.2.69_v8.0.401-1.0.fc41 fedora 2.4 MiB coreutils-common x86_64 9.5-11.fc41 updates 11.2 MiB cracklib x86_64 2.9.11-6.fc41 fedora 238.9 KiB crypto-policies noarch 20250124-1.git4d262e7.fc41 updates 137.4 KiB curl x86_64 8.9.1-3.fc41 updates 793.5 KiB cyrus-sasl-lib x86_64 2.1.28-27.fc41 fedora 2.3 MiB debugedit x86_64 5.1-4.fc41 updates 197.7 KiB dwz x86_64 0.15-8.fc41 fedora 298.9 KiB ed x86_64 1.20.2-2.fc41 fedora 146.9 KiB efi-srpm-macros noarch 5-13.fc41 updates 40.2 KiB elfutils x86_64 0.192-7.fc41 updates 2.6 MiB elfutils-debuginfod-client x86_64 0.192-7.fc41 updates 81.4 KiB elfutils-default-yama-scope noarch 0.192-7.fc41 updates 1.8 KiB elfutils-libelf x86_64 0.192-7.fc41 updates 1.2 MiB elfutils-libs x86_64 0.192-7.fc41 updates 654.9 KiB fedora-gpg-keys noarch 41-1 fedora 126.4 KiB fedora-release noarch 41-29 updates 0.0 B fedora-release-identity-basic noarch 41-29 updates 682.0 B fedora-repos noarch 41-1 fedora 4.9 KiB file x86_64 5.45-7.fc41 fedora 103.5 KiB file-libs x86_64 5.45-7.fc41 fedora 9.9 MiB filesystem x86_64 3.18-23.fc41 fedora 106.0 B fonts-srpm-macros noarch 1:2.0.5-17.fc41 fedora 55.8 KiB forge-srpm-macros noarch 0.4.0-1.fc41 updates 38.9 KiB fpc-srpm-macros noarch 1.3-13.fc41 fedora 144.0 B gdb-minimal x86_64 15.2-4.fc41 updates 12.7 MiB gdbm x86_64 1:1.23-7.fc41 fedora 460.9 KiB gdbm-libs x86_64 1:1.23-7.fc41 fedora 121.9 KiB ghc-srpm-macros noarch 1.9.1-2.fc41 fedora 747.0 B glibc x86_64 2.40-21.fc41 updates 6.7 MiB glibc-common x86_64 2.40-21.fc41 updates 1.0 MiB glibc-gconv-extra x86_64 2.40-21.fc41 updates 7.9 MiB gmp x86_64 1:6.3.0-2.fc41 fedora 811.4 KiB gnat-srpm-macros noarch 6-6.fc41 fedora 1.0 KiB go-srpm-macros noarch 3.6.0-5.fc41 updates 60.8 KiB jansson x86_64 2.13.1-10.fc41 fedora 88.3 KiB json-c x86_64 0.17-4.fc41 fedora 82.4 KiB kernel-srpm-macros noarch 1.0-24.fc41 fedora 1.9 KiB keyutils-libs x86_64 1.6.3-4.fc41 fedora 54.4 KiB krb5-libs x86_64 1.21.3-4.fc41 updates 2.3 MiB libacl x86_64 2.3.2-2.fc41 fedora 40.0 KiB libarchive x86_64 3.7.4-4.fc41 updates 926.6 KiB libattr x86_64 2.5.2-4.fc41 fedora 28.5 KiB libblkid x86_64 2.40.4-1.fc41 updates 257.2 KiB libbrotli x86_64 1.1.0-5.fc41 fedora 837.6 KiB libcap x86_64 2.70-4.fc41 fedora 220.2 KiB libcap-ng x86_64 0.8.5-3.fc41 fedora 69.2 KiB libcom_err x86_64 1.47.1-6.fc41 fedora 67.2 KiB libcurl x86_64 8.9.1-3.fc41 updates 809.3 KiB libeconf x86_64 0.6.2-3.fc41 fedora 58.0 KiB libevent x86_64 2.1.12-14.fc41 fedora 895.7 KiB libfdisk x86_64 2.40.4-1.fc41 updates 356.4 KiB libffi x86_64 3.4.6-3.fc41 fedora 86.4 KiB libgcc x86_64 14.2.1-7.fc41 updates 270.9 KiB libgomp x86_64 14.2.1-7.fc41 updates 514.2 KiB libidn2 x86_64 2.3.7-2.fc41 fedora 329.1 KiB libmount x86_64 2.40.4-1.fc41 updates 348.8 KiB libnghttp2 x86_64 1.62.1-2.fc41 fedora 166.1 KiB libnsl2 x86_64 2.0.1-2.fc41 fedora 57.9 KiB libpkgconf x86_64 2.3.0-1.fc41 fedora 78.2 KiB libpsl x86_64 0.21.5-4.fc41 fedora 80.5 KiB libpwquality x86_64 1.4.5-11.fc41 fedora 417.8 KiB libselinux x86_64 3.7-5.fc41 fedora 181.0 KiB libsemanage x86_64 3.7-2.fc41 fedora 293.5 KiB libsepol x86_64 3.7-2.fc41 fedora 817.8 KiB libsmartcols x86_64 2.40.4-1.fc41 updates 176.2 KiB libssh x86_64 0.10.6-8.fc41 fedora 513.3 KiB libssh-config noarch 0.10.6-8.fc41 fedora 277.0 B libstdc++ x86_64 14.2.1-7.fc41 updates 2.7 MiB libtasn1 x86_64 4.19.0-9.fc41 fedora 175.7 KiB libtirpc x86_64 1.3.6-1.rc3.fc41 updates 197.6 KiB libtool-ltdl x86_64 2.4.7-12.fc41 fedora 66.2 KiB libunistring x86_64 1.1-8.fc41 fedora 1.7 MiB libutempter x86_64 1.2.1-15.fc41 fedora 57.7 KiB libuuid x86_64 2.40.4-1.fc41 updates 39.9 KiB libverto x86_64 0.3.2-9.fc41 fedora 29.5 KiB libxcrypt x86_64 4.4.38-3.fc41 updates 269.9 KiB libxml2 x86_64 2.12.9-1.fc41 updates 1.7 MiB libzstd x86_64 1.5.6-2.fc41 fedora 795.9 KiB lua-libs x86_64 5.4.6-6.fc41 fedora 285.0 KiB lua-srpm-macros noarch 1-14.fc41 fedora 1.3 KiB lz4-libs x86_64 1.10.0-1.fc41 fedora 145.5 KiB mpfr x86_64 4.2.1-5.fc41 fedora 832.1 KiB ncurses-base noarch 6.5-2.20240629.fc41 fedora 326.3 KiB ncurses-libs x86_64 6.5-2.20240629.fc41 fedora 975.2 KiB ocaml-srpm-macros noarch 10-3.fc41 fedora 1.9 KiB openblas-srpm-macros noarch 2-18.fc41 fedora 112.0 B openldap x86_64 2.6.8-7.fc41 updates 631.4 KiB openssl-libs x86_64 1:3.2.4-1.fc41 updates 7.8 MiB p11-kit x86_64 0.25.5-3.fc41 fedora 2.2 MiB p11-kit-trust x86_64 0.25.5-3.fc41 fedora 391.4 KiB package-notes-srpm-macros noarch 0.5-12.fc41 fedora 1.6 KiB pam x86_64 1.6.1-7.fc41 updates 1.8 MiB pam-libs x86_64 1.6.1-7.fc41 updates 139.0 KiB pcre2 x86_64 10.44-1.fc41.1 fedora 653.5 KiB pcre2-syntax noarch 10.44-1.fc41.1 fedora 251.6 KiB perl-srpm-macros noarch 1-56.fc41 fedora 861.0 B pkgconf x86_64 2.3.0-1.fc41 fedora 88.6 KiB pkgconf-m4 noarch 2.3.0-1.fc41 fedora 14.4 KiB pkgconf-pkg-config x86_64 2.3.0-1.fc41 fedora 989.0 B popt x86_64 1.19-7.fc41 fedora 136.9 KiB publicsuffix-list-dafsa noarch 20250116-1.fc41 updates 68.5 KiB pyproject-srpm-macros noarch 1.17.0-1.fc41 updates 1.9 KiB python-srpm-macros noarch 3.13-3.fc41 fedora 51.0 KiB qt5-srpm-macros noarch 5.15.15-1.fc41 fedora 500.0 B qt6-srpm-macros noarch 6.8.2-1.fc41 updates 456.0 B readline x86_64 8.2-10.fc41 fedora 493.2 KiB rpm x86_64 4.20.0-1.fc41 fedora 3.1 MiB rpm-build-libs x86_64 4.20.0-1.fc41 fedora 206.7 KiB rpm-libs x86_64 4.20.0-1.fc41 fedora 725.9 KiB rpm-sequoia x86_64 1.7.0-5.fc41 updates 2.4 MiB rust-srpm-macros noarch 26.3-3.fc41 fedora 4.8 KiB setup noarch 2.15.0-8.fc41 updates 720.7 KiB sqlite-libs x86_64 3.46.1-2.fc41 updates 1.5 MiB systemd-libs x86_64 256.11-1.fc41 updates 2.0 MiB util-linux-core x86_64 2.40.4-1.fc41 updates 1.5 MiB xxhash-libs x86_64 0.8.3-1.fc41 updates 88.5 KiB xz-libs x86_64 1:5.6.2-2.fc41 fedora 214.4 KiB zig-srpm-macros noarch 1-3.fc41 fedora 1.1 KiB zip x86_64 3.0-41.fc41 fedora 703.2 KiB zlib-ng-compat x86_64 2.2.3-1.fc41 updates 138.5 KiB zstd x86_64 1.5.6-2.fc41 fedora 1.7 MiB Installing groups: Buildsystem building group Transaction Summary: Installing: 154 packages Total size of inbound packages is 52 MiB. Need to download 52 MiB. After this operation, 180 MiB extra will be used (install 180 MiB, remove 0 B). [ 1/154] bzip2-0:1.0.8-19.fc41.x86_64 100% | 500.2 KiB/s | 52.5 KiB | 00m00s [ 2/154] cpio-0:2.15-2.fc41.x86_64 100% | 1.7 MiB/s | 291.8 KiB | 00m00s [ 3/154] diffutils-0:3.10-8.fc41.x86_6 100% | 5.0 MiB/s | 405.4 KiB | 00m00s [ 4/154] grep-0:3.11-9.fc41.x86_64 100% | 9.8 MiB/s | 299.7 KiB | 00m00s [ 5/154] findutils-1:4.10.0-4.fc41.x86 100% | 9.7 MiB/s | 548.5 KiB | 00m00s [ 6/154] bash-0:5.2.32-1.fc41.x86_64 100% | 7.9 MiB/s | 1.8 MiB | 00m00s [ 7/154] gzip-0:1.13-2.fc41.x86_64 100% | 5.9 MiB/s | 170.2 KiB | 00m00s [ 8/154] patch-0:2.7.6-25.fc41.x86_64 100% | 1.5 MiB/s | 131.0 KiB | 00m00s [ 9/154] rpm-build-0:4.20.0-1.fc41.x86 100% | 3.1 MiB/s | 82.8 KiB | 00m00s [ 10/154] redhat-rpm-config-0:293-1.fc4 100% | 667.0 KiB/s | 82.0 KiB | 00m00s [ 11/154] sed-0:4.9-3.fc41.x86_64 100% | 9.7 MiB/s | 317.7 KiB | 00m00s [ 12/154] tar-2:1.35-4.fc41.x86_64 100% | 13.6 MiB/s | 860.7 KiB | 00m00s [ 13/154] unzip-0:6.0-64.fc41.x86_64 100% | 7.5 MiB/s | 184.9 KiB | 00m00s [ 14/154] which-0:2.21-42.fc41.x86_64 100% | 1.4 MiB/s | 41.6 KiB | 00m00s [ 15/154] shadow-utils-2:4.15.1-12.fc41 100% | 9.0 MiB/s | 1.3 MiB | 00m00s [ 16/154] xz-1:5.6.2-2.fc41.x86_64 100% | 13.2 MiB/s | 471.5 KiB | 00m00s [ 17/154] info-0:7.1-3.fc41.x86_64 100% | 519.9 KiB/s | 182.5 KiB | 00m00s [ 18/154] gawk-0:5.3.0-4.fc41.x86_64 100% | 27.5 MiB/s | 1.1 MiB | 00m00s [ 19/154] fedora-release-common-0:41-29 100% | 95.5 KiB/s | 23.6 KiB | 00m00s [ 20/154] glibc-minimal-langpack-0:2.40 100% | 200.0 KiB/s | 100.4 KiB | 00m01s [ 21/154] filesystem-0:3.18-23.fc41.x86 100% | 28.6 MiB/s | 1.1 MiB | 00m00s [ 22/154] ncurses-libs-0:6.5-2.20240629 100% | 13.0 MiB/s | 334.0 KiB | 00m00s [ 23/154] bzip2-libs-0:1.0.8-19.fc41.x8 100% | 1.8 MiB/s | 41.1 KiB | 00m00s [ 24/154] libselinux-0:3.7-5.fc41.x86_6 100% | 3.7 MiB/s | 87.8 KiB | 00m00s [ 25/154] pcre2-0:10.44-1.fc41.1.x86_64 100% | 8.5 MiB/s | 243.1 KiB | 00m00s [ 26/154] ed-0:1.20.2-2.fc41.x86_64 100% | 3.5 MiB/s | 81.8 KiB | 00m00s [ 27/154] coreutils-0:9.5-11.fc41.x86_6 100% | 1.4 MiB/s | 1.1 MiB | 00m01s [ 28/154] libattr-0:2.5.2-4.fc41.x86_64 100% | 826.0 KiB/s | 18.2 KiB | 00m00s [ 29/154] ansible-srpm-macros-0:1-16.fc 100% | 1.0 MiB/s | 20.8 KiB | 00m00s [ 30/154] dwz-0:0.15-8.fc41.x86_64 100% | 5.7 MiB/s | 138.9 KiB | 00m00s [ 31/154] file-0:5.45-7.fc41.x86_64 100% | 2.0 MiB/s | 49.1 KiB | 00m00s [ 32/154] util-linux-0:2.40.4-1.fc41.x8 100% | 1.9 MiB/s | 1.1 MiB | 00m01s [ 33/154] fonts-srpm-macros-1:2.0.5-17. 100% | 1.2 MiB/s | 27.0 KiB | 00m00s [ 34/154] fpc-srpm-macros-0:1.3-13.fc41 100% | 419.0 KiB/s | 8.0 KiB | 00m00s [ 35/154] ghc-srpm-macros-0:1.9.1-2.fc4 100% | 431.3 KiB/s | 9.1 KiB | 00m00s [ 36/154] gnat-srpm-macros-0:6-6.fc41.n 100% | 406.9 KiB/s | 9.0 KiB | 00m00s [ 37/154] kernel-srpm-macros-0:1.0-24.f 100% | 519.4 KiB/s | 9.9 KiB | 00m00s [ 38/154] lua-srpm-macros-0:1-14.fc41.n 100% | 422.8 KiB/s | 8.9 KiB | 00m00s [ 39/154] openblas-srpm-macros-0:2-18.f 100% | 385.7 KiB/s | 7.7 KiB | 00m00s [ 40/154] ocaml-srpm-macros-0:10-3.fc41 100% | 438.1 KiB/s | 9.2 KiB | 00m00s [ 41/154] package-notes-srpm-macros-0:0 100% | 468.1 KiB/s | 9.8 KiB | 00m00s [ 42/154] perl-srpm-macros-0:1-56.fc41. 100% | 448.0 KiB/s | 8.5 KiB | 00m00s [ 43/154] python-srpm-macros-0:3.13-3.f 100% | 1.1 MiB/s | 23.7 KiB | 00m00s [ 44/154] qt5-srpm-macros-0:5.15.15-1.f 100% | 423.7 KiB/s | 8.9 KiB | 00m00s [ 45/154] rust-srpm-macros-0:26.3-3.fc4 100% | 526.4 KiB/s | 12.1 KiB | 00m00s [ 46/154] zig-srpm-macros-0:1-3.fc41.no 100% | 353.2 KiB/s | 8.1 KiB | 00m00s [ 47/154] zip-0:3.0-41.fc41.x86_64 100% | 9.9 MiB/s | 264.8 KiB | 00m00s [ 48/154] rpm-0:4.20.0-1.fc41.x86_64 100% | 8.9 MiB/s | 547.4 KiB | 00m00s [ 49/154] popt-0:1.19-7.fc41.x86_64 100% | 2.9 MiB/s | 65.9 KiB | 00m00s [ 50/154] readline-0:8.2-10.fc41.x86_64 100% | 7.7 MiB/s | 213.2 KiB | 00m00s [ 51/154] rpm-build-libs-0:4.20.0-1.fc4 100% | 3.3 MiB/s | 98.6 KiB | 00m00s [ 52/154] rpm-libs-0:4.20.0-1.fc41.x86_ 100% | 9.7 MiB/s | 309.4 KiB | 00m00s [ 53/154] zstd-0:1.5.6-2.fc41.x86_64 100% | 17.4 MiB/s | 481.5 KiB | 00m00s [ 54/154] libacl-0:2.3.2-2.fc41.x86_64 100% | 1.2 MiB/s | 24.5 KiB | 00m00s [ 55/154] libeconf-0:0.6.2-3.fc41.x86_6 100% | 1.5 MiB/s | 32.2 KiB | 00m00s [ 56/154] libsemanage-0:3.7-2.fc41.x86_ 100% | 4.9 MiB/s | 116.3 KiB | 00m00s [ 57/154] xz-libs-1:5.6.2-2.fc41.x86_64 100% | 4.2 MiB/s | 111.8 KiB | 00m00s [ 58/154] gmp-1:6.3.0-2.fc41.x86_64 100% | 12.4 MiB/s | 318.0 KiB | 00m00s [ 59/154] libcap-0:2.70-4.fc41.x86_64 100% | 3.5 MiB/s | 86.7 KiB | 00m00s [ 60/154] fedora-repos-0:41-1.noarch 100% | 439.6 KiB/s | 9.2 KiB | 00m00s [ 61/154] mpfr-0:4.2.1-5.fc41.x86_64 100% | 4.8 MiB/s | 346.3 KiB | 00m00s [ 62/154] glibc-common-0:2.40-21.fc41.x 100% | 4.0 MiB/s | 389.2 KiB | 00m00s [ 63/154] libcap-ng-0:0.8.5-3.fc41.x86_ 100% | 1.4 MiB/s | 32.6 KiB | 00m00s [ 64/154] libutempter-0:1.2.1-15.fc41.x 100% | 1.2 MiB/s | 26.6 KiB | 00m00s [ 65/154] ncurses-base-0:6.5-2.20240629 100% | 3.6 MiB/s | 88.3 KiB | 00m00s [ 66/154] coreutils-common-0:9.5-11.fc4 100% | 8.6 MiB/s | 2.1 MiB | 00m00s [ 67/154] libsepol-0:3.7-2.fc41.x86_64 100% | 13.4 MiB/s | 342.2 KiB | 00m00s [ 68/154] pcre2-syntax-0:10.44-1.fc41.1 100% | 4.7 MiB/s | 149.9 KiB | 00m00s [ 69/154] file-libs-0:5.45-7.fc41.x86_6 100% | 21.9 MiB/s | 762.0 KiB | 00m00s [ 70/154] lua-libs-0:5.4.6-6.fc41.x86_6 100% | 4.8 MiB/s | 132.0 KiB | 00m00s [ 71/154] libzstd-0:1.5.6-2.fc41.x86_64 100% | 11.7 MiB/s | 310.3 KiB | 00m00s [ 72/154] lz4-libs-0:1.10.0-1.fc41.x86_ 100% | 2.8 MiB/s | 70.7 KiB | 00m00s [ 73/154] fedora-gpg-keys-0:41-1.noarch 100% | 5.7 MiB/s | 133.7 KiB | 00m00s [ 74/154] util-linux-core-0:2.40.4-1.fc 100% | 1.1 MiB/s | 492.2 KiB | 00m00s [ 75/154] basesystem-0:11-21.fc41.noarc 100% | 335.1 KiB/s | 7.4 KiB | 00m00s [ 76/154] glibc-gconv-extra-0:2.40-21.f 100% | 6.2 MiB/s | 1.7 MiB | 00m00s [ 77/154] glibc-0:2.40-21.fc41.x86_64 100% | 7.9 MiB/s | 2.2 MiB | 00m00s [ 78/154] libgcc-0:14.2.1-7.fc41.x86_64 100% | 1.4 MiB/s | 134.0 KiB | 00m00s [ 79/154] zlib-ng-compat-0:2.2.3-1.fc41 100% | 1.0 MiB/s | 75.6 KiB | 00m00s [ 80/154] libstdc++-0:14.2.1-7.fc41.x86 100% | 8.7 MiB/s | 822.8 KiB | 00m00s [ 81/154] audit-libs-0:4.0.3-1.fc41.x86 100% | 1.3 MiB/s | 124.8 KiB | 00m00s [ 82/154] libxcrypt-0:4.4.38-3.fc41.x86 100% | 1.5 MiB/s | 117.1 KiB | 00m00s [ 83/154] pam-libs-0:1.6.1-7.fc41.x86_6 100% | 775.6 KiB/s | 57.4 KiB | 00m00s [ 84/154] setup-0:2.15.0-8.fc41.noarch 100% | 1.6 MiB/s | 154.6 KiB | 00m00s [ 85/154] rpm-sequoia-0:1.7.0-5.fc41.x8 100% | 9.9 MiB/s | 911.4 KiB | 00m00s [ 86/154] sqlite-libs-0:3.46.1-2.fc41.x 100% | 7.8 MiB/s | 719.0 KiB | 00m00s [ 87/154] elfutils-libs-0:0.192-7.fc41. 100% | 3.1 MiB/s | 250.8 KiB | 00m00s [ 88/154] elfutils-libelf-0:0.192-7.fc4 100% | 1.9 MiB/s | 204.6 KiB | 00m00s [ 89/154] json-c-0:0.17-4.fc41.x86_64 100% | 2.0 MiB/s | 44.0 KiB | 00m00s [ 90/154] elfutils-debuginfod-client-0: 100% | 592.6 KiB/s | 43.9 KiB | 00m00s [ 91/154] elfutils-0:0.192-7.fc41.x86_6 100% | 2.9 MiB/s | 501.3 KiB | 00m00s [ 92/154] libgomp-0:14.2.1-7.fc41.x86_6 100% | 1.7 MiB/s | 349.5 KiB | 00m00s [ 93/154] debugedit-0:5.1-4.fc41.x86_64 100% | 968.8 KiB/s | 75.6 KiB | 00m00s [ 94/154] jansson-0:2.13.1-10.fc41.x86_ 100% | 122.4 KiB/s | 44.4 KiB | 00m00s [ 95/154] pkgconf-pkg-config-0:2.3.0-1. 100% | 435.2 KiB/s | 10.0 KiB | 00m00s [ 96/154] libarchive-0:3.7.4-4.fc41.x86 100% | 2.4 MiB/s | 409.1 KiB | 00m00s [ 97/154] pkgconf-0:2.3.0-1.fc41.x86_64 100% | 1.6 MiB/s | 45.2 KiB | 00m00s [ 98/154] pkgconf-m4-0:2.3.0-1.fc41.noa 100% | 596.7 KiB/s | 14.3 KiB | 00m00s [ 99/154] binutils-0:2.43.1-5.fc41.x86_ 100% | 13.7 MiB/s | 6.3 MiB | 00m00s [100/154] libpkgconf-0:2.3.0-1.fc41.x86 100% | 1.7 MiB/s | 38.5 KiB | 00m00s [101/154] build-reproducibility-srpm-ma 100% | 132.0 KiB/s | 10.8 KiB | 00m00s [102/154] curl-0:8.9.1-3.fc41.x86_64 100% | 1.9 MiB/s | 311.9 KiB | 00m00s [103/154] efi-srpm-macros-0:5-13.fc41.n 100% | 299.5 KiB/s | 22.5 KiB | 00m00s [104/154] add-determinism-0:0.3.6-3.fc4 100% | 3.9 MiB/s | 875.9 KiB | 00m00s [105/154] forge-srpm-macros-0:0.4.0-1.f 100% | 237.4 KiB/s | 19.7 KiB | 00m00s [106/154] go-srpm-macros-0:3.6.0-5.fc41 100% | 349.5 KiB/s | 28.0 KiB | 00m00s [107/154] pyproject-srpm-macros-0:1.17. 100% | 183.9 KiB/s | 14.0 KiB | 00m00s [108/154] qt6-srpm-macros-0:6.8.2-1.fc4 100% | 119.4 KiB/s | 9.2 KiB | 00m00s [109/154] libblkid-0:2.40.4-1.fc41.x86_ 100% | 1.5 MiB/s | 119.2 KiB | 00m00s [110/154] libuuid-0:2.40.4-1.fc41.x86_6 100% | 366.2 KiB/s | 27.1 KiB | 00m00s [111/154] libsmartcols-0:2.40.4-1.fc41. 100% | 1.0 MiB/s | 79.4 KiB | 00m00s [112/154] libmount-0:2.40.4-1.fc41.x86_ 100% | 1.3 MiB/s | 149.0 KiB | 00m00s [113/154] libfdisk-0:2.40.4-1.fc41.x86_ 100% | 1.9 MiB/s | 152.5 KiB | 00m00s [114/154] systemd-libs-0:256.11-1.fc41. 100% | 5.9 MiB/s | 691.7 KiB | 00m00s [115/154] authselect-0:1.5.0-8.fc41.x86 100% | 6.2 MiB/s | 145.8 KiB | 00m00s [116/154] gdbm-libs-1:1.23-7.fc41.x86_6 100% | 2.5 MiB/s | 56.3 KiB | 00m00s [117/154] libnsl2-0:2.0.1-2.fc41.x86_64 100% | 1.4 MiB/s | 29.6 KiB | 00m00s [118/154] authselect-libs-0:1.5.0-8.fc4 100% | 8.2 MiB/s | 218.0 KiB | 00m00s [119/154] libpwquality-0:1.4.5-11.fc41. 100% | 4.2 MiB/s | 119.0 KiB | 00m00s [120/154] cracklib-0:2.9.11-6.fc41.x86_ 100% | 4.1 MiB/s | 92.1 KiB | 00m00s [121/154] ca-certificates-0:2024.2.69_v 100% | 24.3 MiB/s | 871.2 KiB | 00m00s [122/154] pam-0:1.6.1-7.fc41.x86_64 100% | 2.6 MiB/s | 555.0 KiB | 00m00s [123/154] libcom_err-0:1.47.1-6.fc41.x8 100% | 1.2 MiB/s | 26.6 KiB | 00m00s [124/154] openssl-libs-1:3.2.4-1.fc41.x 100% | 17.4 MiB/s | 2.3 MiB | 00m00s [125/154] gdbm-1:1.23-7.fc41.x86_64 100% | 6.4 MiB/s | 151.8 KiB | 00m00s [126/154] libtirpc-0:1.3.6-1.rc3.fc41.x 100% | 1.1 MiB/s | 89.4 KiB | 00m00s [127/154] keyutils-libs-0:1.6.3-4.fc41. 100% | 1.4 MiB/s | 31.6 KiB | 00m00s [128/154] libverto-0:0.3.2-9.fc41.x86_6 100% | 940.5 KiB/s | 20.7 KiB | 00m00s [129/154] crypto-policies-0:20250124-1. 100% | 1.3 MiB/s | 97.8 KiB | 00m00s [130/154] elfutils-default-yama-scope-0 100% | 168.4 KiB/s | 12.5 KiB | 00m00s [131/154] libxml2-0:2.12.9-1.fc41.x86_6 100% | 5.8 MiB/s | 656.8 KiB | 00m00s [132/154] libffi-0:3.4.6-3.fc41.x86_64 100% | 1.8 MiB/s | 39.9 KiB | 00m00s [133/154] p11-kit-0:0.25.5-3.fc41.x86_6 100% | 17.8 MiB/s | 490.9 KiB | 00m00s [134/154] alternatives-0:1.31-1.fc41.x8 100% | 532.7 KiB/s | 39.4 KiB | 00m00s [135/154] krb5-libs-0:1.21.3-4.fc41.x86 100% | 3.2 MiB/s | 757.0 KiB | 00m00s [136/154] libtasn1-0:4.19.0-9.fc41.x86_ 100% | 3.3 MiB/s | 74.2 KiB | 00m00s [137/154] p11-kit-trust-0:0.25.5-3.fc41 100% | 4.8 MiB/s | 132.1 KiB | 00m00s [138/154] fedora-release-0:41-29.noarch 100% | 170.2 KiB/s | 12.8 KiB | 00m00s [139/154] xxhash-libs-0:0.8.3-1.fc41.x8 100% | 472.8 KiB/s | 35.9 KiB | 00m00s [140/154] fedora-release-identity-basic 100% | 165.5 KiB/s | 13.6 KiB | 00m00s [141/154] libbrotli-0:1.1.0-5.fc41.x86_ 100% | 12.8 MiB/s | 340.5 KiB | 00m00s [142/154] libcurl-0:8.9.1-3.fc41.x86_64 100% | 3.7 MiB/s | 350.0 KiB | 00m00s [143/154] libidn2-0:2.3.7-2.fc41.x86_64 100% | 5.0 MiB/s | 118.4 KiB | 00m00s [144/154] libnghttp2-0:1.62.1-2.fc41.x8 100% | 3.1 MiB/s | 76.6 KiB | 00m00s [145/154] gdb-minimal-0:15.2-4.fc41.x86 100% | 17.6 MiB/s | 4.0 MiB | 00m00s [146/154] libpsl-0:0.21.5-4.fc41.x86_64 100% | 2.6 MiB/s | 64.1 KiB | 00m00s [147/154] libssh-0:0.10.6-8.fc41.x86_64 100% | 6.3 MiB/s | 211.8 KiB | 00m00s [148/154] libssh-config-0:0.10.6-8.fc41 100% | 355.4 KiB/s | 9.2 KiB | 00m00s [149/154] publicsuffix-list-dafsa-0:202 100% | 794.4 KiB/s | 58.8 KiB | 00m00s [150/154] cyrus-sasl-lib-0:2.1.28-27.fc 100% | 25.0 MiB/s | 794.9 KiB | 00m00s [151/154] openldap-0:2.6.8-7.fc41.x86_6 100% | 2.0 MiB/s | 243.0 KiB | 00m00s [152/154] libevent-0:2.1.12-14.fc41.x86 100% | 10.1 MiB/s | 257.5 KiB | 00m00s [153/154] libtool-ltdl-0:2.4.7-12.fc41. 100% | 1.7 MiB/s | 35.6 KiB | 00m00s [154/154] libunistring-0:1.1-8.fc41.x86 100% | 2.9 MiB/s | 544.8 KiB | 00m00s -------------------------------------------------------------------------------- [154/154] Total 100% | 12.0 MiB/s | 52.4 MiB | 00m04s Running transaction Importing OpenPGP key 0xE99D6AD1: UserID : "Fedora (41) " Fingerprint: 466CF2D8B60BC3057AA9453ED0622462E99D6AD1 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-41-primary The key was successfully imported. [ 1/156] Verify package files 100% | 766.0 B/s | 154.0 B | 00m00s [ 2/156] Prepare transaction 100% | 1.8 KiB/s | 154.0 B | 00m00s [ 3/156] Installing libgcc-0:14.2.1-7. 100% | 133.1 MiB/s | 272.5 KiB | 00m00s [ 4/156] Installing publicsuffix-list- 100% | 67.6 MiB/s | 69.2 KiB | 00m00s [ 5/156] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 6/156] Installing fedora-release-ide 100% | 918.0 KiB/s | 940.0 B | 00m00s [ 7/156] Installing fedora-gpg-keys-0: 100% | 18.7 MiB/s | 172.2 KiB | 00m00s [ 8/156] Installing fedora-repos-0:41- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 9/156] Installing fedora-release-com 100% | 11.7 MiB/s | 24.0 KiB | 00m00s [ 10/156] Installing fedora-release-0:4 100% | 0.0 B/s | 124.0 B | 00m00s [ 11/156] Installing setup-0:2.15.0-8.f 100% | 47.3 MiB/s | 726.5 KiB | 00m00s [ 12/156] Installing filesystem-0:3.18- 100% | 1.6 MiB/s | 212.5 KiB | 00m00s [ 13/156] Installing basesystem-0:11-21 100% | 0.0 B/s | 124.0 B | 00m00s [ 14/156] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 732.0 B | 00m00s [ 15/156] Installing pkgconf-m4-0:2.3.0 100% | 0.0 B/s | 14.8 KiB | 00m00s [ 16/156] Installing pcre2-syntax-0:10. 100% | 124.1 MiB/s | 254.1 KiB | 00m00s [ 17/156] Installing ncurses-base-0:6.5 100% | 34.3 MiB/s | 351.7 KiB | 00m00s [ 18/156] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 19/156] Installing ncurses-libs-0:6.5 100% | 137.0 MiB/s | 981.8 KiB | 00m00s [ 20/156] Installing glibc-0:2.40-21.fc 100% | 196.7 MiB/s | 6.7 MiB | 00m00s [ 21/156] Installing bash-0:5.2.32-1.fc 100% | 233.4 MiB/s | 8.2 MiB | 00m00s [ 22/156] Installing glibc-common-0:2.4 100% | 116.8 MiB/s | 1.1 MiB | 00m00s [ 23/156] Installing glibc-gconv-extra- 100% | 148.9 MiB/s | 8.0 MiB | 00m00s [ 24/156] Installing zlib-ng-compat-0:2 100% | 136.1 MiB/s | 139.3 KiB | 00m00s [ 25/156] Installing bzip2-libs-0:1.0.8 100% | 79.9 MiB/s | 81.8 KiB | 00m00s [ 26/156] Installing xz-libs-1:5.6.2-2. 100% | 210.4 MiB/s | 215.5 KiB | 00m00s [ 27/156] Installing popt-0:1.19-7.fc41 100% | 28.0 MiB/s | 143.5 KiB | 00m00s [ 28/156] Installing readline-0:8.2-10. 100% | 161.2 MiB/s | 495.3 KiB | 00m00s [ 29/156] Installing libuuid-0:2.40.4-1 100% | 40.0 MiB/s | 41.0 KiB | 00m00s [ 30/156] Installing libblkid-0:2.40.4- 100% | 126.1 MiB/s | 258.2 KiB | 00m00s [ 31/156] Installing libattr-0:2.5.2-4. 100% | 28.8 MiB/s | 29.5 KiB | 00m00s [ 32/156] Installing libacl-0:2.3.2-2.f 100% | 39.8 MiB/s | 40.7 KiB | 00m00s [ 33/156] Installing gmp-1:6.3.0-2.fc41 100% | 198.6 MiB/s | 813.7 KiB | 00m00s [ 34/156] Installing libzstd-0:1.5.6-2. 100% | 259.5 MiB/s | 797.2 KiB | 00m00s [ 35/156] Installing elfutils-libelf-0: 100% | 233.4 MiB/s | 1.2 MiB | 00m00s [ 36/156] Installing libstdc++-0:14.2.1 100% | 245.4 MiB/s | 2.7 MiB | 00m00s [ 37/156] Installing libxcrypt-0:4.4.38 100% | 133.1 MiB/s | 272.6 KiB | 00m00s [ 38/156] Installing libeconf-0:0.6.2-3 100% | 58.3 MiB/s | 59.7 KiB | 00m00s [ 39/156] Installing gdbm-libs-1:1.23-7 100% | 120.7 MiB/s | 123.6 KiB | 00m00s [ 40/156] Installing dwz-0:0.15-8.fc41. 100% | 146.6 MiB/s | 300.3 KiB | 00m00s [ 41/156] Installing mpfr-0:4.2.1-5.fc4 100% | 203.5 MiB/s | 833.7 KiB | 00m00s [ 42/156] Installing gawk-0:5.3.0-4.fc4 100% | 173.2 MiB/s | 1.7 MiB | 00m00s [ 43/156] Installing unzip-0:6.0-64.fc4 100% | 127.0 MiB/s | 390.3 KiB | 00m00s [ 44/156] Installing file-libs-0:5.45-7 100% | 496.7 MiB/s | 9.9 MiB | 00m00s [ 45/156] Installing file-0:5.45-7.fc41 100% | 6.4 MiB/s | 105.0 KiB | 00m00s [ 46/156] Installing crypto-policies-0: 100% | 14.5 MiB/s | 163.7 KiB | 00m00s [ 47/156] Installing pcre2-0:10.44-1.fc 100% | 213.2 MiB/s | 654.9 KiB | 00m00s [ 48/156] Installing grep-0:3.11-9.fc41 100% | 111.5 MiB/s | 1.0 MiB | 00m00s [ 49/156] Installing xz-1:5.6.2-2.fc41. 100% | 120.5 MiB/s | 1.2 MiB | 00m00s [ 50/156] Installing libcap-ng-0:0.8.5- 100% | 69.4 MiB/s | 71.0 KiB | 00m00s [ 51/156] Installing audit-libs-0:4.0.3 100% | 172.6 MiB/s | 353.4 KiB | 00m00s [ 52/156] Installing pam-libs-0:1.6.1-7 100% | 69.0 MiB/s | 141.3 KiB | 00m00s [ 53/156] Installing libcap-0:2.70-4.fc 100% | 73.3 MiB/s | 225.2 KiB | 00m00s [ 54/156] Installing systemd-libs-0:256 100% | 221.1 MiB/s | 2.0 MiB | 00m00s [ 55/156] Installing libsepol-0:3.7-2.f 100% | 266.5 MiB/s | 818.8 KiB | 00m00s [ 56/156] Installing libselinux-0:3.7-5 100% | 89.0 MiB/s | 182.3 KiB | 00m00s [ 57/156] Installing sed-0:4.9-3.fc41.x 100% | 121.3 MiB/s | 869.7 KiB | 00m00s [ 58/156] Installing findutils-1:4.10.0 100% | 185.8 MiB/s | 1.9 MiB | 00m00s [ 59/156] Installing libmount-0:2.40.4- 100% | 170.8 MiB/s | 349.8 KiB | 00m00s [ 60/156] Installing lua-libs-0:5.4.6-6 100% | 139.8 MiB/s | 286.2 KiB | 00m00s [ 61/156] Installing lz4-libs-0:1.10.0- 100% | 143.1 MiB/s | 146.6 KiB | 00m00s [ 62/156] Installing libsmartcols-0:2.4 100% | 173.2 MiB/s | 177.4 KiB | 00m00s [ 63/156] Installing libcom_err-0:1.47. 100% | 66.7 MiB/s | 68.3 KiB | 00m00s [ 64/156] Installing alternatives-0:1.3 100% | 64.8 MiB/s | 66.4 KiB | 00m00s [ 65/156] Installing libffi-0:3.4.6-3.f 100% | 85.7 MiB/s | 87.8 KiB | 00m00s [ 66/156] Installing libtasn1-0:4.19.0- 100% | 86.7 MiB/s | 177.5 KiB | 00m00s [ 67/156] Installing p11-kit-0:0.25.5-3 100% | 147.2 MiB/s | 2.2 MiB | 00m00s [ 68/156] Installing libunistring-0:1.1 100% | 247.2 MiB/s | 1.7 MiB | 00m00s [ 69/156] Installing libidn2-0:2.3.7-2. 100% | 65.4 MiB/s | 335.1 KiB | 00m00s [ 70/156] Installing libpsl-0:0.21.5-4. 100% | 79.7 MiB/s | 81.7 KiB | 00m00s [ 71/156] Installing p11-kit-trust-0:0. 100% | 21.3 MiB/s | 393.1 KiB | 00m00s [ 72/156] Installing util-linux-core-0: 100% | 122.9 MiB/s | 1.5 MiB | 00m00s [ 73/156] Installing zstd-0:1.5.6-2.fc4 100% | 241.6 MiB/s | 1.7 MiB | 00m00s [ 74/156] Installing tar-2:1.35-4.fc41. 100% | 211.3 MiB/s | 3.0 MiB | 00m00s [ 75/156] Installing libsemanage-0:3.7- 100% | 96.1 MiB/s | 295.2 KiB | 00m00s [ 76/156] Installing shadow-utils-2:4.1 100% | 80.1 MiB/s | 4.2 MiB | 00m00s [ 77/156] Installing libutempter-0:1.2. 100% | 14.6 MiB/s | 59.7 KiB | 00m00s [ 78/156] Installing zip-0:3.0-41.fc41. 100% | 172.6 MiB/s | 707.1 KiB | 00m00s [ 79/156] Installing gdbm-1:1.23-7.fc41 100% | 113.7 MiB/s | 465.8 KiB | 00m00s [ 80/156] Installing cyrus-sasl-lib-0:2 100% | 230.6 MiB/s | 2.3 MiB | 00m00s [ 81/156] Installing libfdisk-0:2.40.4- 100% | 174.5 MiB/s | 357.4 KiB | 00m00s [ 82/156] Installing libxml2-0:2.12.9-1 100% | 240.9 MiB/s | 1.7 MiB | 00m00s [ 83/156] Installing bzip2-0:1.0.8-19.f 100% | 48.9 MiB/s | 100.2 KiB | 00m00s [ 84/156] Installing sqlite-libs-0:3.46 100% | 245.4 MiB/s | 1.5 MiB | 00m00s [ 85/156] Installing add-determinism-0: 100% | 294.5 MiB/s | 2.4 MiB | 00m00s [ 86/156] Installing build-reproducibil 100% | 0.0 B/s | 1.0 KiB | 00m00s [ 87/156] Installing ed-0:1.20.2-2.fc41 100% | 72.8 MiB/s | 149.2 KiB | 00m00s [ 88/156] Installing patch-0:2.7.6-25.f 100% | 131.0 MiB/s | 268.2 KiB | 00m00s [ 89/156] Installing elfutils-default-y 100% | 157.2 KiB/s | 2.0 KiB | 00m00s [ 90/156] Installing elfutils-libs-0:0. 100% | 160.3 MiB/s | 656.7 KiB | 00m00s [ 91/156] Installing cpio-0:2.15-2.fc41 100% | 137.5 MiB/s | 1.1 MiB | 00m00s [ 92/156] Installing diffutils-0:3.10-8 100% | 159.0 MiB/s | 1.6 MiB | 00m00s [ 93/156] Installing json-c-0:0.17-4.fc 100% | 81.7 MiB/s | 83.6 KiB | 00m00s [ 94/156] Installing libgomp-0:14.2.1-7 100% | 251.7 MiB/s | 515.6 KiB | 00m00s [ 95/156] Installing jansson-0:2.13.1-1 100% | 87.6 MiB/s | 89.7 KiB | 00m00s [ 96/156] Installing libpkgconf-0:2.3.0 100% | 77.5 MiB/s | 79.3 KiB | 00m00s [ 97/156] Installing pkgconf-0:2.3.0-1. 100% | 44.5 MiB/s | 91.1 KiB | 00m00s [ 98/156] Installing pkgconf-pkg-config 100% | 1.7 MiB/s | 1.8 KiB | 00m00s [ 99/156] Installing keyutils-libs-0:1. 100% | 54.5 MiB/s | 55.8 KiB | 00m00s [100/156] Installing libverto-0:0.3.2-9 100% | 30.5 MiB/s | 31.3 KiB | 00m00s [101/156] Installing xxhash-libs-0:0.8. 100% | 87.8 MiB/s | 89.9 KiB | 00m00s [102/156] Installing libbrotli-0:1.1.0- 100% | 205.0 MiB/s | 839.9 KiB | 00m00s [103/156] Installing libnghttp2-0:1.62. 100% | 163.2 MiB/s | 167.1 KiB | 00m00s [104/156] Installing libtool-ltdl-0:2.4 100% | 32.9 MiB/s | 67.3 KiB | 00m00s [105/156] Installing coreutils-common-0 100% | 243.3 MiB/s | 11.2 MiB | 00m00s [106/156] Installing openssl-libs-1:3.2 100% | 313.2 MiB/s | 7.8 MiB | 00m00s [107/156] Installing coreutils-0:9.5-11 100% | 132.7 MiB/s | 5.7 MiB | 00m00s [108/156] Installing ca-certificates-0: 100% | 2.5 MiB/s | 2.4 MiB | 00m01s [109/156] Installing krb5-libs-0:1.21.3 100% | 193.3 MiB/s | 2.3 MiB | 00m00s [110/156] Installing libarchive-0:3.7.4 100% | 181.4 MiB/s | 928.6 KiB | 00m00s [111/156] Installing libtirpc-0:1.3.6-1 100% | 97.4 MiB/s | 199.4 KiB | 00m00s [112/156] Installing gzip-0:1.13-2.fc41 100% | 96.3 MiB/s | 394.6 KiB | 00m00s [113/156] Installing authselect-libs-0: 100% | 90.8 MiB/s | 837.2 KiB | 00m00s [114/156] Installing cracklib-0:2.9.11- 100% | 34.9 MiB/s | 250.3 KiB | 00m00s [115/156] Installing libpwquality-0:1.4 100% | 52.5 MiB/s | 430.1 KiB | 00m00s [116/156] Installing libnsl2-0:2.0.1-2. 100% | 28.8 MiB/s | 59.1 KiB | 00m00s [117/156] Installing pam-0:1.6.1-7.fc41 100% | 78.2 MiB/s | 1.9 MiB | 00m00s [118/156] Installing libssh-0:0.10.6-8. 100% | 167.8 MiB/s | 515.4 KiB | 00m00s [119/156] Installing rpm-sequoia-0:1.7. 100% | 268.7 MiB/s | 2.4 MiB | 00m00s [120/156] Installing rpm-libs-0:4.20.0- 100% | 236.8 MiB/s | 727.4 KiB | 00m00s [121/156] Installing rpm-build-libs-0:4 100% | 202.6 MiB/s | 207.5 KiB | 00m00s [122/156] Installing libevent-0:2.1.12- 100% | 219.6 MiB/s | 899.5 KiB | 00m00s [123/156] Installing openldap-0:2.6.8-7 100% | 155.1 MiB/s | 635.2 KiB | 00m00s [124/156] Installing libcurl-0:8.9.1-3. 100% | 197.8 MiB/s | 810.4 KiB | 00m00s [125/156] Installing elfutils-debuginfo 100% | 40.9 MiB/s | 83.8 KiB | 00m00s [126/156] Installing elfutils-0:0.192-7 100% | 239.0 MiB/s | 2.6 MiB | 00m00s [127/156] Installing binutils-0:2.43.1- 100% | 256.0 MiB/s | 27.4 MiB | 00m00s [128/156] Installing gdb-minimal-0:15.2 100% | 276.5 MiB/s | 12.7 MiB | 00m00s [129/156] Installing debugedit-0:5.1-4. 100% | 97.9 MiB/s | 200.4 KiB | 00m00s [130/156] Installing curl-0:8.9.1-3.fc4 100% | 33.8 MiB/s | 796.0 KiB | 00m00s [131/156] Installing rpm-0:4.20.0-1.fc4 100% | 86.4 MiB/s | 2.5 MiB | 00m00s [132/156] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [133/156] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.7 KiB | 00m00s [134/156] Installing efi-srpm-macros-0: 100% | 40.2 MiB/s | 41.2 KiB | 00m00s [135/156] Installing rust-srpm-macros-0 100% | 5.4 MiB/s | 5.6 KiB | 00m00s [136/156] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [137/156] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [138/156] Installing package-notes-srpm 100% | 0.0 B/s | 2.0 KiB | 00m00s [139/156] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [140/156] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.2 KiB | 00m00s [141/156] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [142/156] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [143/156] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [144/156] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [145/156] Installing ansible-srpm-macro 100% | 35.4 MiB/s | 36.2 KiB | 00m00s [146/156] Installing python-srpm-macros 100% | 50.9 MiB/s | 52.2 KiB | 00m00s [147/156] Installing fonts-srpm-macros- 100% | 55.7 MiB/s | 57.0 KiB | 00m00s [148/156] Installing forge-srpm-macros- 100% | 39.3 MiB/s | 40.3 KiB | 00m00s [149/156] Installing go-srpm-macros-0:3 100% | 60.5 MiB/s | 62.0 KiB | 00m00s [150/156] Installing redhat-rpm-config- 100% | 46.4 MiB/s | 190.1 KiB | 00m00s [151/156] Installing rpm-build-0:4.20.0 100% | 49.5 MiB/s | 202.8 KiB | 00m00s [152/156] Installing pyproject-srpm-mac 100% | 1.2 MiB/s | 2.5 KiB | 00m00s [153/156] Installing util-linux-0:2.40. 100% | 82.3 MiB/s | 3.7 MiB | 00m00s [154/156] Installing authselect-0:1.5.0 100% | 39.5 MiB/s | 161.9 KiB | 00m00s [155/156] Installing which-0:2.21-42.fc 100% | 80.5 MiB/s | 82.4 KiB | 00m00s [156/156] Installing info-0:7.1-3.fc41. 100% | 277.5 KiB/s | 362.2 KiB | 00m01s Complete! Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: add-determinism-0.3.6-3.fc41.x86_64 alternatives-1.31-1.fc41.x86_64 ansible-srpm-macros-1-16.fc41.noarch audit-libs-4.0.3-1.fc41.x86_64 authselect-1.5.0-8.fc41.x86_64 authselect-libs-1.5.0-8.fc41.x86_64 basesystem-11-21.fc41.noarch bash-5.2.32-1.fc41.x86_64 binutils-2.43.1-5.fc41.x86_64 build-reproducibility-srpm-macros-0.3.6-3.fc41.noarch bzip2-1.0.8-19.fc41.x86_64 bzip2-libs-1.0.8-19.fc41.x86_64 ca-certificates-2024.2.69_v8.0.401-1.0.fc41.noarch coreutils-9.5-11.fc41.x86_64 coreutils-common-9.5-11.fc41.x86_64 cpio-2.15-2.fc41.x86_64 cracklib-2.9.11-6.fc41.x86_64 crypto-policies-20250124-1.git4d262e7.fc41.noarch curl-8.9.1-3.fc41.x86_64 cyrus-sasl-lib-2.1.28-27.fc41.x86_64 debugedit-5.1-4.fc41.x86_64 diffutils-3.10-8.fc41.x86_64 dwz-0.15-8.fc41.x86_64 ed-1.20.2-2.fc41.x86_64 efi-srpm-macros-5-13.fc41.noarch elfutils-0.192-7.fc41.x86_64 elfutils-debuginfod-client-0.192-7.fc41.x86_64 elfutils-default-yama-scope-0.192-7.fc41.noarch elfutils-libelf-0.192-7.fc41.x86_64 elfutils-libs-0.192-7.fc41.x86_64 fedora-gpg-keys-41-1.noarch fedora-release-41-29.noarch fedora-release-common-41-29.noarch fedora-release-identity-basic-41-29.noarch fedora-repos-41-1.noarch file-5.45-7.fc41.x86_64 file-libs-5.45-7.fc41.x86_64 filesystem-3.18-23.fc41.x86_64 findutils-4.10.0-4.fc41.x86_64 fonts-srpm-macros-2.0.5-17.fc41.noarch forge-srpm-macros-0.4.0-1.fc41.noarch fpc-srpm-macros-1.3-13.fc41.noarch gawk-5.3.0-4.fc41.x86_64 gdb-minimal-15.2-4.fc41.x86_64 gdbm-1.23-7.fc41.x86_64 gdbm-libs-1.23-7.fc41.x86_64 ghc-srpm-macros-1.9.1-2.fc41.noarch glibc-2.40-21.fc41.x86_64 glibc-common-2.40-21.fc41.x86_64 glibc-gconv-extra-2.40-21.fc41.x86_64 glibc-minimal-langpack-2.40-21.fc41.x86_64 gmp-6.3.0-2.fc41.x86_64 gnat-srpm-macros-6-6.fc41.noarch go-srpm-macros-3.6.0-5.fc41.noarch gpg-pubkey-e99d6ad1-64d2612c grep-3.11-9.fc41.x86_64 gzip-1.13-2.fc41.x86_64 info-7.1-3.fc41.x86_64 jansson-2.13.1-10.fc41.x86_64 json-c-0.17-4.fc41.x86_64 kernel-srpm-macros-1.0-24.fc41.noarch keyutils-libs-1.6.3-4.fc41.x86_64 krb5-libs-1.21.3-4.fc41.x86_64 libacl-2.3.2-2.fc41.x86_64 libarchive-3.7.4-4.fc41.x86_64 libattr-2.5.2-4.fc41.x86_64 libblkid-2.40.4-1.fc41.x86_64 libbrotli-1.1.0-5.fc41.x86_64 libcap-2.70-4.fc41.x86_64 libcap-ng-0.8.5-3.fc41.x86_64 libcom_err-1.47.1-6.fc41.x86_64 libcurl-8.9.1-3.fc41.x86_64 libeconf-0.6.2-3.fc41.x86_64 libevent-2.1.12-14.fc41.x86_64 libfdisk-2.40.4-1.fc41.x86_64 libffi-3.4.6-3.fc41.x86_64 libgcc-14.2.1-7.fc41.x86_64 libgomp-14.2.1-7.fc41.x86_64 libidn2-2.3.7-2.fc41.x86_64 libmount-2.40.4-1.fc41.x86_64 libnghttp2-1.62.1-2.fc41.x86_64 libnsl2-2.0.1-2.fc41.x86_64 libpkgconf-2.3.0-1.fc41.x86_64 libpsl-0.21.5-4.fc41.x86_64 libpwquality-1.4.5-11.fc41.x86_64 libselinux-3.7-5.fc41.x86_64 libsemanage-3.7-2.fc41.x86_64 libsepol-3.7-2.fc41.x86_64 libsmartcols-2.40.4-1.fc41.x86_64 libssh-0.10.6-8.fc41.x86_64 libssh-config-0.10.6-8.fc41.noarch libstdc++-14.2.1-7.fc41.x86_64 libtasn1-4.19.0-9.fc41.x86_64 libtirpc-1.3.6-1.rc3.fc41.x86_64 libtool-ltdl-2.4.7-12.fc41.x86_64 libunistring-1.1-8.fc41.x86_64 libutempter-1.2.1-15.fc41.x86_64 libuuid-2.40.4-1.fc41.x86_64 libverto-0.3.2-9.fc41.x86_64 libxcrypt-4.4.38-3.fc41.x86_64 libxml2-2.12.9-1.fc41.x86_64 libzstd-1.5.6-2.fc41.x86_64 lua-libs-5.4.6-6.fc41.x86_64 lua-srpm-macros-1-14.fc41.noarch lz4-libs-1.10.0-1.fc41.x86_64 mpfr-4.2.1-5.fc41.x86_64 ncurses-base-6.5-2.20240629.fc41.noarch ncurses-libs-6.5-2.20240629.fc41.x86_64 ocaml-srpm-macros-10-3.fc41.noarch openblas-srpm-macros-2-18.fc41.noarch openldap-2.6.8-7.fc41.x86_64 openssl-libs-3.2.4-1.fc41.x86_64 p11-kit-0.25.5-3.fc41.x86_64 p11-kit-trust-0.25.5-3.fc41.x86_64 package-notes-srpm-macros-0.5-12.fc41.noarch pam-1.6.1-7.fc41.x86_64 pam-libs-1.6.1-7.fc41.x86_64 patch-2.7.6-25.fc41.x86_64 pcre2-10.44-1.fc41.1.x86_64 pcre2-syntax-10.44-1.fc41.1.noarch perl-srpm-macros-1-56.fc41.noarch pkgconf-2.3.0-1.fc41.x86_64 pkgconf-m4-2.3.0-1.fc41.noarch pkgconf-pkg-config-2.3.0-1.fc41.x86_64 popt-1.19-7.fc41.x86_64 publicsuffix-list-dafsa-20250116-1.fc41.noarch pyproject-srpm-macros-1.17.0-1.fc41.noarch python-srpm-macros-3.13-3.fc41.noarch qt5-srpm-macros-5.15.15-1.fc41.noarch qt6-srpm-macros-6.8.2-1.fc41.noarch readline-8.2-10.fc41.x86_64 redhat-rpm-config-293-1.fc41.noarch rpm-4.20.0-1.fc41.x86_64 rpm-build-4.20.0-1.fc41.x86_64 rpm-build-libs-4.20.0-1.fc41.x86_64 rpm-libs-4.20.0-1.fc41.x86_64 rpm-sequoia-1.7.0-5.fc41.x86_64 rust-srpm-macros-26.3-3.fc41.noarch sed-4.9-3.fc41.x86_64 setup-2.15.0-8.fc41.noarch shadow-utils-4.15.1-12.fc41.x86_64 sqlite-libs-3.46.1-2.fc41.x86_64 systemd-libs-256.11-1.fc41.x86_64 tar-1.35-4.fc41.x86_64 unzip-6.0-64.fc41.x86_64 util-linux-2.40.4-1.fc41.x86_64 util-linux-core-2.40.4-1.fc41.x86_64 which-2.21-42.fc41.x86_64 xxhash-libs-0.8.3-1.fc41.x86_64 xz-5.6.2-2.fc41.x86_64 xz-libs-5.6.2-2.fc41.x86_64 zig-srpm-macros-1-3.fc41.noarch zip-3.0-41.fc41.x86_64 zlib-ng-compat-2.2.3-1.fc41.x86_64 zstd-1.5.6-2.fc41.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1600992000 Wrote: /builddir/build/SRPMS/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-41-x86_64-1739580523.198863/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-jowxw_f_/gloo/gloo.spec) Config(child) 0 minutes 32 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm) Config(fedora-41-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-x86_64-bootstrap-1739580523.198863/root. INFO: reusing tmpfs at /var/lib/mock/fedora-41-x86_64-bootstrap-1739580523.198863/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-x86_64-1739580523.198863/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-1.fc41.x86_64 rpm-sequoia-1.7.0-5.fc41.x86_64 dnf5-5.2.8.1-3.fc41.x86_64 dnf5-plugins-5.2.8.1-3.fc41.x86_64 Finish: chroot init Start: build phase for gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Start: build setup for gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1600992000 Wrote: /builddir/build/SRPMS/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Updating and loading repositories: fedora 100% | 1.0 MiB/s | 32.1 KiB | 00m00s updates 100% | 1.1 MiB/s | 29.7 KiB | 00m00s Copr repository 100% | 32.5 KiB/s | 1.5 KiB | 00m00s Additional repo copr_rezso_CUDA 100% | 27.2 KiB/s | 1.5 KiB | 00m00s Additional repo http_developer_downloa 100% | 29.8 KiB/s | 3.5 KiB | 00m00s Additional repo http_developer_downloa 100% | 33.5 KiB/s | 3.5 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: cmake x86_64 3.30.7-1.fc41 updates 32.7 MiB cuda-cudart-devel-12-6 x86_64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 6.8 MiB cuda-gcc-13-c++ x86_64 13.3.1-1.fc41 copr_base 60.8 MiB cuda-nvcc-12-6 x86_64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 204.4 MiB cuda-nvml-devel-12-6 x86_64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 1.4 MiB gcc-c++ x86_64 14.2.1-7.fc41 updates 37.7 MiB git x86_64 2.48.1-1.fc41 updates 85.3 KiB hiredis-devel x86_64 1.2.0-3.fc41 fedora 177.4 KiB libnccl x86_64 2.25.1-1+cuda12.8 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 366.3 MiB libnccl-devel x86_64 2.25.1-1+cuda12.8 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 40.2 KiB libuv-devel x86_64 1:1.50.0-1.fc41 updates 192.0 KiB rdma-core-devel x86_64 51.0-5.fc41 updates 606.3 KiB Installing dependencies: annobin-docs noarch 12.69-1.fc41 fedora 97.7 KiB annobin-plugin-gcc x86_64 12.69-1.fc41 fedora 985.0 KiB cmake-data noarch 3.30.7-1.fc41 updates 8.2 MiB cmake-filesystem x86_64 3.30.7-1.fc41 updates 0.0 B cmake-rpm-macros noarch 3.30.7-1.fc41 updates 7.7 KiB cpp x86_64 14.2.1-7.fc41 updates 34.5 MiB cuda-cccl-12-6 x86_64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 11.6 MiB cuda-crt-12-6 x86_64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 854.8 KiB cuda-cudart-12-6 x86_64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 760.9 KiB cuda-gcc-13 x86_64 13.3.1-1.fc41 copr_base 110.1 MiB cuda-nvvm-12-6 x86_64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 56.1 MiB cuda-toolkit-12-6-config-common noarch 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 0.0 B cuda-toolkit-12-config-common noarch 12.8.57-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 44.0 B cuda-toolkit-config-common noarch 12.8.57-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 41.0 B emacs-filesystem noarch 1:30.0-3.fc41 fedora 0.0 B expat x86_64 2.6.4-1.fc41 updates 292.9 KiB gcc x86_64 14.2.1-7.fc41 updates 103.4 MiB gcc-plugin-annobin x86_64 14.2.1-7.fc41 updates 59.6 KiB git-core x86_64 2.48.1-1.fc41 updates 22.5 MiB git-core-doc noarch 2.48.1-1.fc41 updates 17.4 MiB glibc-devel x86_64 2.40-21.fc41 updates 2.3 MiB groff-base x86_64 1.23.0-7.fc41 fedora 3.8 MiB hiredis x86_64 1.2.0-3.fc41 fedora 110.1 KiB infiniband-diags x86_64 51.0-5.fc41 updates 1.0 MiB isl x86_64 0.16.1-21.fc41 fedora 3.0 MiB jsoncpp x86_64 1.9.5-8.fc41 fedora 253.4 KiB kernel-headers x86_64 6.12.4-200.fc41 updates 6.4 MiB less x86_64 668-1.fc41 updates 406.3 KiB libb2 x86_64 0.98.1-12.fc41 fedora 42.2 KiB libcbor x86_64 0.11.0-2.fc41 fedora 73.9 KiB libedit x86_64 3.1-54.20250104cvs.fc41 updates 239.3 KiB libfido2 x86_64 1.15.0-2.fc41 fedora 238.2 KiB libibumad x86_64 51.0-5.fc41 updates 43.9 KiB libibverbs x86_64 51.0-5.fc41 updates 1.2 MiB libmpc x86_64 1.3.1-6.fc41 fedora 164.7 KiB libnl3 x86_64 3.11.0-1.fc41 updates 1.0 MiB librdmacm x86_64 51.0-5.fc41 updates 154.2 KiB libstdc++-devel x86_64 14.2.1-7.fc41 updates 15.4 MiB libuv x86_64 1:1.50.0-1.fc41 updates 568.4 KiB libuv-static x86_64 1:1.50.0-1.fc41 updates 413.3 KiB libxcrypt-devel x86_64 4.4.38-3.fc41 updates 30.8 KiB make x86_64 1:4.4.1-8.fc41 fedora 1.8 MiB mpdecimal x86_64 2.5.1-16.fc41 fedora 204.9 KiB ncurses x86_64 6.5-2.20240629.fc41 fedora 627.3 KiB openssh x86_64 9.9p1-2.fc41 updates 1.4 MiB openssh-clients x86_64 9.9p1-2.fc41 updates 2.7 MiB perl-AutoLoader noarch 5.74-514.fc41 updates 20.5 KiB perl-B x86_64 1.89-514.fc41 updates 498.0 KiB perl-Carp noarch 1.54-511.fc41 fedora 46.6 KiB perl-Class-Struct noarch 0.68-514.fc41 updates 25.4 KiB perl-Data-Dumper x86_64 2.189-512.fc41 fedora 111.7 KiB perl-Digest noarch 1.20-511.fc41 fedora 35.3 KiB perl-Digest-MD5 x86_64 2.59-5.fc41 fedora 59.8 KiB perl-DynaLoader x86_64 1.56-514.fc41 updates 32.1 KiB perl-Encode x86_64 4:3.21-511.fc41 fedora 4.7 MiB perl-Errno x86_64 1.38-514.fc41 updates 8.3 KiB perl-Error noarch 1:0.17029-16.fc41 fedora 77.3 KiB perl-Exporter noarch 5.78-511.fc41 fedora 54.3 KiB perl-Fcntl x86_64 1.18-514.fc41 updates 49.0 KiB perl-File-Basename noarch 2.86-514.fc41 updates 14.0 KiB perl-File-Find noarch 1.44-514.fc41 updates 41.9 KiB perl-File-Path noarch 2.18-511.fc41 fedora 63.5 KiB perl-File-Temp noarch 1:0.231.100-511.fc41 fedora 162.3 KiB perl-File-stat noarch 1.14-514.fc41 updates 12.5 KiB perl-FileHandle noarch 2.05-514.fc41 updates 9.3 KiB perl-Getopt-Long noarch 1:2.58-2.fc41 fedora 144.5 KiB perl-Getopt-Std noarch 1.14-514.fc41 updates 11.2 KiB perl-Git noarch 2.48.1-1.fc41 updates 64.0 KiB perl-HTTP-Tiny noarch 0.090-1.fc41 updates 154.4 KiB perl-IO x86_64 1.55-514.fc41 updates 151.1 KiB perl-IO-Socket-IP noarch 0.43-1.fc41 updates 100.3 KiB perl-IO-Socket-SSL noarch 2.089-1.fc41 fedora 703.3 KiB perl-IPC-Open3 noarch 1.22-514.fc41 updates 22.5 KiB perl-MIME-Base32 noarch 1.303-21.fc41 fedora 30.7 KiB perl-MIME-Base64 x86_64 3.16-511.fc41 fedora 46.1 KiB perl-Net-SSLeay x86_64 1.94-7.fc41 fedora 1.3 MiB perl-POSIX x86_64 2.20-514.fc41 updates 235.1 KiB perl-PathTools x86_64 3.91-512.fc41 updates 184.1 KiB perl-Pod-Escapes noarch 1:1.07-511.fc41 fedora 24.9 KiB perl-Pod-Perldoc noarch 3.28.01-512.fc41 fedora 163.7 KiB perl-Pod-Simple noarch 1:3.45-511.fc41 fedora 560.9 KiB perl-Pod-Usage noarch 4:2.03-511.fc41 fedora 84.8 KiB perl-Scalar-List-Utils x86_64 5:1.68-1.fc41 updates 148.9 KiB perl-SelectSaver noarch 1.02-514.fc41 updates 2.2 KiB perl-Socket x86_64 4:2.038-511.fc41 fedora 124.0 KiB perl-Storable x86_64 1:3.32-511.fc41 fedora 232.4 KiB perl-Symbol noarch 1.09-514.fc41 updates 6.8 KiB perl-Term-ANSIColor noarch 5.01-512.fc41 fedora 97.5 KiB perl-Term-Cap noarch 1.18-511.fc41 fedora 29.3 KiB perl-TermReadKey x86_64 2.38-23.fc41 fedora 64.1 KiB perl-Text-ParseWords noarch 3.31-511.fc41 fedora 13.6 KiB perl-Text-Tabs+Wrap noarch 2024.001-511.fc41 fedora 22.6 KiB perl-Time-Local noarch 2:1.350-511.fc41 fedora 69.0 KiB perl-URI noarch 5.30-1.fc41 fedora 256.9 KiB perl-base noarch 2.27-514.fc41 updates 12.5 KiB perl-constant noarch 1.33-512.fc41 fedora 26.2 KiB perl-if noarch 0.61.000-514.fc41 updates 5.8 KiB perl-interpreter x86_64 4:5.40.1-514.fc41 updates 122.3 KiB perl-lib x86_64 0.65-514.fc41 updates 8.5 KiB perl-libnet noarch 3.15-512.fc41 fedora 289.4 KiB perl-libs x86_64 4:5.40.1-514.fc41 updates 9.8 MiB perl-locale noarch 1.12-514.fc41 updates 6.5 KiB perl-mro x86_64 1.29-514.fc41 updates 45.6 KiB perl-overload noarch 1.37-514.fc41 updates 71.5 KiB perl-overloading noarch 0.02-514.fc41 updates 4.8 KiB perl-parent noarch 1:0.242-1.fc41 fedora 10.0 KiB perl-podlators noarch 1:6.0.2-2.fc41 fedora 317.5 KiB perl-vars noarch 1.05-514.fc41 updates 3.9 KiB python-pip-wheel noarch 24.2-1.fc41 fedora 1.2 MiB python3 x86_64 3.13.2-1.fc41 updates 31.8 KiB python3-libs x86_64 3.13.2-1.fc41 updates 40.4 MiB rhash x86_64 1.4.4-2.fc41 fedora 349.9 KiB tzdata noarch 2025a-1.fc41 updates 1.6 MiB vim-filesystem noarch 2:9.1.1081-1.fc41 updates 40.0 B Transaction Summary: Installing: 126 packages Total size of inbound packages is 430 MiB. Need to download 430 MiB. After this operation, 1 GiB extra will be used (install 1 GiB, remove 0 B). [ 1/126] cuda-cudart-devel-12-6-0:12.6 100% | 3.6 MiB/s | 2.1 MiB | 00m01s [ 2/126] cmake-0:3.30.7-1.fc41.x86_64 100% | 15.5 MiB/s | 10.9 MiB | 00m01s [ 3/126] cuda-nvml-devel-12-6-0:12.6.7 100% | 503.5 KiB/s | 222.5 KiB | 00m00s [ 4/126] git-0:2.48.1-1.fc41.x86_64 100% | 293.7 KiB/s | 51.7 KiB | 00m00s [ 5/126] gcc-c++-0:14.2.1-7.fc41.x86_6 100% | 23.8 MiB/s | 13.7 MiB | 00m01s [ 6/126] hiredis-devel-0:1.2.0-3.fc41. 100% | 554.8 KiB/s | 53.8 KiB | 00m00s [ 7/126] cuda-nvcc-12-6-0:12.6.85-1.x8 100% | 40.7 MiB/s | 67.3 MiB | 00m02s [ 8/126] libnccl-devel-0:2.25.1-1+cuda 100% | 57.7 KiB/s | 20.8 KiB | 00m00s [ 9/126] libuv-devel-1:1.50.0-1.fc41.x 100% | 342.6 KiB/s | 41.1 KiB | 00m00s [ 10/126] jsoncpp-0:1.9.5-8.fc41.x86_64 100% | 1.9 MiB/s | 99.3 KiB | 00m00s [ 11/126] make-1:4.4.1-8.fc41.x86_64 100% | 10.2 MiB/s | 586.1 KiB | 00m00s [ 12/126] rdma-core-devel-0:51.0-5.fc41 100% | 1.7 MiB/s | 424.2 KiB | 00m00s [ 13/126] rhash-0:1.4.4-2.fc41.x86_64 100% | 4.9 MiB/s | 196.0 KiB | 00m00s [ 14/126] cmake-filesystem-0:3.30.7-1.f 100% | 426.0 KiB/s | 17.0 KiB | 00m00s [ 15/126] cmake-data-0:3.30.7-1.fc41.no 100% | 13.4 MiB/s | 2.3 MiB | 00m00s [ 16/126] cuda-cudart-12-6-0:12.6.77-1. 100% | 779.1 KiB/s | 225.9 KiB | 00m00s [ 17/126] cuda-crt-12-6-0:12.6.85-1.x86 100% | 473.3 KiB/s | 109.8 KiB | 00m00s [ 18/126] libmpc-0:1.3.1-6.fc41.x86_64 100% | 568.9 KiB/s | 71.1 KiB | 00m00s [ 19/126] cuda-nvvm-12-6-0:12.6.85-1.x8 100% | 23.7 MiB/s | 23.5 MiB | 00m01s [ 20/126] perl-Getopt-Long-1:2.58-2.fc4 100% | 1.1 MiB/s | 63.9 KiB | 00m00s [ 21/126] perl-TermReadKey-0:2.38-23.fc 100% | 2.2 MiB/s | 35.6 KiB | 00m00s [ 22/126] git-core-0:2.48.1-1.fc41.x86_ 100% | 11.7 MiB/s | 4.7 MiB | 00m00s [ 23/126] gcc-0:14.2.1-7.fc41.x86_64 100% | 24.8 MiB/s | 36.1 MiB | 00m01s [ 24/126] perl-Git-0:2.48.1-1.fc41.noar 100% | 1.0 MiB/s | 38.4 KiB | 00m00s [ 25/126] git-core-doc-0:2.48.1-1.fc41. 100% | 14.6 MiB/s | 3.0 MiB | 00m00s [ 26/126] hiredis-0:1.2.0-3.fc41.x86_64 100% | 1.2 MiB/s | 49.9 KiB | 00m00s [ 27/126] libuv-1:1.50.0-1.fc41.x86_64 100% | 5.1 MiB/s | 264.3 KiB | 00m00s [ 28/126] infiniband-diags-0:51.0-5.fc4 100% | 4.6 MiB/s | 329.6 KiB | 00m00s [ 29/126] libibumad-0:51.0-5.fc41.x86_6 100% | 487.8 KiB/s | 26.3 KiB | 00m00s [ 30/126] libuv-static-1:1.50.0-1.fc41. 100% | 731.6 KiB/s | 108.3 KiB | 00m00s [ 31/126] libibverbs-0:51.0-5.fc41.x86_ 100% | 8.7 MiB/s | 435.7 KiB | 00m00s [ 32/126] librdmacm-0:51.0-5.fc41.x86_6 100% | 1.8 MiB/s | 72.5 KiB | 00m00s [ 33/126] emacs-filesystem-1:30.0-3.fc4 100% | 420.1 KiB/s | 7.1 KiB | 00m00s [ 34/126] perl-Exporter-0:5.78-511.fc41 100% | 1.9 MiB/s | 30.9 KiB | 00m00s [ 35/126] perl-Pod-Usage-4:2.03-511.fc4 100% | 2.3 MiB/s | 40.0 KiB | 00m00s [ 36/126] perl-Text-ParseWords-0:3.31-5 100% | 227.1 KiB/s | 16.6 KiB | 00m00s [ 37/126] perl-constant-0:1.33-512.fc41 100% | 404.1 KiB/s | 23.0 KiB | 00m00s [ 38/126] perl-Error-1:0.17029-16.fc41. 100% | 548.7 KiB/s | 40.6 KiB | 00m00s [ 39/126] perl-Carp-0:1.54-511.fc41.noa 100% | 187.6 KiB/s | 28.9 KiB | 00m00s [ 40/126] cpp-0:14.2.1-7.fc41.x86_64 100% | 21.2 MiB/s | 11.5 MiB | 00m01s [ 41/126] perl-Pod-Perldoc-0:3.28.01-51 100% | 577.9 KiB/s | 86.1 KiB | 00m00s [ 42/126] perl-podlators-1:6.0.2-2.fc41 100% | 1.1 MiB/s | 128.9 KiB | 00m00s [ 43/126] perl-File-Temp-1:0.231.100-51 100% | 110.7 KiB/s | 59.1 KiB | 00m01s [ 44/126] groff-base-0:1.23.0-7.fc41.x8 100% | 1.4 MiB/s | 1.1 MiB | 00m01s [ 45/126] perl-Pod-Simple-1:3.45-511.fc 100% | 897.7 KiB/s | 219.0 KiB | 00m00s [ 46/126] perl-parent-1:0.242-1.fc41.no 100% | 192.3 KiB/s | 15.0 KiB | 00m00s [ 47/126] perl-Term-ANSIColor-0:5.01-51 100% | 2.5 MiB/s | 47.7 KiB | 00m00s [ 48/126] perl-Term-Cap-0:1.18-511.fc41 100% | 630.6 KiB/s | 22.1 KiB | 00m00s [ 49/126] perl-File-Path-0:2.18-511.fc4 100% | 2.2 MiB/s | 35.3 KiB | 00m00s [ 50/126] perl-Pod-Escapes-1:1.07-511.f 100% | 1.2 MiB/s | 19.8 KiB | 00m00s [ 51/126] perl-Text-Tabs+Wrap-0:2024.00 100% | 1.3 MiB/s | 21.9 KiB | 00m00s [ 52/126] cuda-gcc-13-c++-0:13.3.1-1.fc 100% | 35.5 MiB/s | 15.0 MiB | 00m00s [ 53/126] ncurses-0:6.5-2.20240629.fc41 100% | 997.1 KiB/s | 423.8 KiB | 00m00s [ 54/126] libnccl-0:2.25.1-1+cuda12.8.x 100% | 34.1 MiB/s | 173.5 MiB | 00m05s [ 55/126] cuda-cccl-12-6-0:12.6.77-1.x8 100% | 2.9 MiB/s | 1.6 MiB | 00m01s [ 56/126] cuda-toolkit-12-6-config-comm 100% | 25.1 KiB/s | 7.7 KiB | 00m00s [ 57/126] cuda-gcc-13-0:13.3.1-1.fc41.x 100% | 43.6 MiB/s | 33.6 MiB | 00m01s [ 58/126] cuda-toolkit-12-config-common 100% | 31.5 KiB/s | 7.9 KiB | 00m00s [ 59/126] cuda-toolkit-config-common-0: 100% | 24.8 KiB/s | 7.9 KiB | 00m00s [ 60/126] perl-interpreter-4:5.40.1-514 100% | 302.1 KiB/s | 72.2 KiB | 00m00s [ 61/126] perl-Errno-0:1.38-514.fc41.x8 100% | 250.9 KiB/s | 14.8 KiB | 00m00s [ 62/126] perl-libs-4:5.40.1-514.fc41.x 100% | 4.1 MiB/s | 2.3 MiB | 00m01s [ 63/126] isl-0:0.16.1-21.fc41.x86_64 100% | 1.3 MiB/s | 850.2 KiB | 00m01s [ 64/126] libnl3-0:3.11.0-1.fc41.x86_64 100% | 1.8 MiB/s | 352.9 KiB | 00m00s [ 65/126] perl-Getopt-Std-0:1.14-514.fc 100% | 409.2 KiB/s | 15.5 KiB | 00m00s [ 66/126] less-0:668-1.fc41.x86_64 100% | 2.0 MiB/s | 189.4 KiB | 00m00s [ 67/126] openssh-clients-0:9.9p1-2.fc4 100% | 7.5 MiB/s | 759.9 KiB | 00m00s [ 68/126] libfido2-0:1.15.0-2.fc41.x86_ 100% | 952.8 KiB/s | 98.1 KiB | 00m00s [ 69/126] expat-0:2.6.4-1.fc41.x86_64 100% | 458.1 KiB/s | 114.5 KiB | 00m00s [ 70/126] openssh-0:9.9p1-2.fc41.x86_64 100% | 2.8 MiB/s | 353.0 KiB | 00m00s [ 71/126] libcbor-0:0.11.0-2.fc41.x86_6 100% | 974.6 KiB/s | 33.1 KiB | 00m00s [ 72/126] perl-File-Find-0:1.44-514.fc4 100% | 600.7 KiB/s | 25.2 KiB | 00m00s [ 73/126] perl-IPC-Open3-0:1.22-514.fc4 100% | 493.2 KiB/s | 21.7 KiB | 00m00s [ 74/126] perl-PathTools-0:3.91-512.fc4 100% | 2.0 MiB/s | 87.3 KiB | 00m00s [ 75/126] perl-lib-0:0.65-514.fc41.x86_ 100% | 352.6 KiB/s | 14.8 KiB | 00m00s [ 76/126] perl-File-Basename-0:2.86-514 100% | 68.9 KiB/s | 17.0 KiB | 00m00s [ 77/126] glibc-devel-0:2.40-21.fc41.x8 100% | 3.7 MiB/s | 623.1 KiB | 00m00s [ 78/126] vim-filesystem-2:9.1.1081-1.f 100% | 399.9 KiB/s | 16.4 KiB | 00m00s [ 79/126] libstdc++-devel-0:14.2.1-7.fc 100% | 13.6 MiB/s | 2.8 MiB | 00m00s [ 80/126] perl-MIME-Base64-0:3.16-511.f 100% | 55.8 KiB/s | 29.9 KiB | 00m01s [ 81/126] perl-POSIX-0:2.20-514.fc41.x8 100% | 2.3 MiB/s | 97.0 KiB | 00m00s [ 82/126] perl-DynaLoader-0:1.56-514.fc 100% | 681.8 KiB/s | 25.9 KiB | 00m00s [ 83/126] perl-Storable-1:3.32-511.fc41 100% | 155.7 KiB/s | 98.4 KiB | 00m01s [ 84/126] perl-Encode-4:3.21-511.fc41.x 100% | 1.5 MiB/s | 1.1 MiB | 00m01s [ 85/126] perl-vars-0:1.05-514.fc41.noa 100% | 285.7 KiB/s | 12.9 KiB | 00m00s [ 86/126] perl-Socket-4:2.038-511.fc41. 100% | 3.3 MiB/s | 54.8 KiB | 00m00s [ 87/126] perl-Fcntl-0:1.18-514.fc41.x8 100% | 674.2 KiB/s | 29.7 KiB | 00m00s [ 88/126] perl-IO-0:1.55-514.fc41.x86_6 100% | 2.0 MiB/s | 81.7 KiB | 00m00s [ 89/126] perl-Symbol-0:1.09-514.fc41.n 100% | 370.2 KiB/s | 14.1 KiB | 00m00s [ 90/126] perl-if-0:0.61.000-514.fc41.n 100% | 338.0 KiB/s | 13.9 KiB | 00m00s [ 91/126] perl-overload-0:1.37-514.fc41 100% | 1.1 MiB/s | 45.4 KiB | 00m00s [ 92/126] perl-HTTP-Tiny-0:0.090-1.fc41 100% | 1.4 MiB/s | 56.5 KiB | 00m00s [ 93/126] perl-IO-Socket-SSL-0:2.089-1. 100% | 3.3 MiB/s | 231.2 KiB | 00m00s [ 94/126] perl-Net-SSLeay-0:1.94-7.fc41 100% | 2.5 MiB/s | 375.7 KiB | 00m00s [ 95/126] perl-Time-Local-2:1.350-511.f 100% | 253.9 KiB/s | 34.5 KiB | 00m00s [ 96/126] perl-URI-0:5.30-1.fc41.noarch 100% | 998.2 KiB/s | 140.8 KiB | 00m00s [ 97/126] perl-Data-Dumper-0:2.189-512. 100% | 655.2 KiB/s | 56.3 KiB | 00m00s [ 98/126] perl-MIME-Base32-0:1.303-21.f 100% | 238.0 KiB/s | 20.5 KiB | 00m00s [ 99/126] perl-libnet-0:3.15-512.fc41.n 100% | 1.1 MiB/s | 128.5 KiB | 00m00s [100/126] perl-Digest-MD5-0:2.59-5.fc41 100% | 277.0 KiB/s | 36.0 KiB | 00m00s [101/126] perl-Digest-0:1.20-511.fc41.n 100% | 193.0 KiB/s | 24.9 KiB | 00m00s [102/126] perl-AutoLoader-0:5.74-514.fc 100% | 204.8 KiB/s | 21.1 KiB | 00m00s [103/126] perl-base-0:2.27-514.fc41.noa 100% | 341.8 KiB/s | 16.1 KiB | 00m00s [104/126] perl-IO-Socket-IP-0:0.43-1.fc 100% | 754.1 KiB/s | 42.2 KiB | 00m00s [105/126] perl-Scalar-List-Utils-5:1.68 100% | 1.8 MiB/s | 74.2 KiB | 00m00s [106/126] perl-B-0:1.89-514.fc41.x86_64 100% | 3.9 MiB/s | 176.1 KiB | 00m00s [107/126] perl-mro-0:1.29-514.fc41.x86_ 100% | 675.1 KiB/s | 29.7 KiB | 00m00s [108/126] perl-overloading-0:0.02-514.f 100% | 266.0 KiB/s | 12.8 KiB | 00m00s [109/126] perl-locale-0:1.12-514.fc41.n 100% | 269.6 KiB/s | 13.5 KiB | 00m00s [110/126] perl-File-stat-0:1.14-514.fc4 100% | 319.1 KiB/s | 16.9 KiB | 00m00s [111/126] perl-Class-Struct-0:0.68-514. 100% | 521.9 KiB/s | 21.9 KiB | 00m00s [112/126] libedit-0:3.1-54.20250104cvs. 100% | 1.6 MiB/s | 100.7 KiB | 00m00s [113/126] perl-SelectSaver-0:1.02-514.f 100% | 95.0 KiB/s | 11.6 KiB | 00m00s [114/126] libxcrypt-devel-0:4.4.38-3.fc 100% | 571.0 KiB/s | 29.1 KiB | 00m00s [115/126] kernel-headers-0:6.12.4-200.f 100% | 10.3 MiB/s | 1.6 MiB | 00m00s [116/126] gcc-plugin-annobin-0:14.2.1-7 100% | 951.0 KiB/s | 58.0 KiB | 00m00s [117/126] perl-FileHandle-0:2.05-514.fc 100% | 63.2 KiB/s | 15.4 KiB | 00m00s [118/126] cmake-rpm-macros-0:3.30.7-1.f 100% | 78.5 KiB/s | 16.5 KiB | 00m00s [119/126] python3-0:3.13.2-1.fc41.x86_6 100% | 139.5 KiB/s | 28.5 KiB | 00m00s [120/126] annobin-plugin-gcc-0:12.69-1. 100% | 1.2 MiB/s | 971.0 KiB | 00m01s [121/126] annobin-docs-0:12.69-1.fc41.n 100% | 139.4 KiB/s | 91.8 KiB | 00m01s [122/126] libb2-0:0.98.1-12.fc41.x86_64 100% | 1.5 MiB/s | 25.7 KiB | 00m00s [123/126] mpdecimal-0:2.5.1-16.fc41.x86 100% | 966.9 KiB/s | 89.0 KiB | 00m00s [124/126] tzdata-0:2025a-1.fc41.noarch 100% | 3.8 MiB/s | 713.3 KiB | 00m00s [125/126] python-pip-wheel-0:24.2-1.fc4 100% | 1.9 MiB/s | 1.2 MiB | 00m01s [126/126] python3-libs-0:3.13.2-1.fc41. 100% | 3.4 MiB/s | 9.1 MiB | 00m03s -------------------------------------------------------------------------------- [126/126] Total 100% | 33.7 MiB/s | 430.3 MiB | 00m13s Running transaction [ 1/128] Verify package files 100% | 67.0 B/s | 126.0 B | 00m02s [ 2/128] Prepare transaction 100% | 818.0 B/s | 126.0 B | 00m00s [ 3/128] Installing libmpc-0:1.3.1-6.f 100% | 8.1 MiB/s | 166.2 KiB | 00m00s [ 4/128] Installing expat-0:2.6.4-1.fc 100% | 96.0 MiB/s | 295.0 KiB | 00m00s [ 5/128] Installing cmake-filesystem-0 100% | 2.4 MiB/s | 7.3 KiB | 00m00s [ 6/128] Installing libnl3-0:3.11.0-1. 100% | 41.9 MiB/s | 1.0 MiB | 00m00s [ 7/128] Installing libibverbs-0:51.0- 100% | 31.0 MiB/s | 1.2 MiB | 00m00s [ 8/128] Installing libibumad-0:51.0-5 100% | 43.7 MiB/s | 44.8 KiB | 00m00s [ 9/128] Installing libuv-1:1.50.0-1.f 100% | 111.6 MiB/s | 571.2 KiB | 00m00s [ 10/128] Installing make-1:4.4.1-8.fc4 100% | 78.3 MiB/s | 1.8 MiB | 00m00s [ 11/128] Installing libuv-static-1:1.5 100% | 202.0 MiB/s | 413.7 KiB | 00m00s [ 12/128] Installing libuv-devel-1:1.50 100% | 17.3 MiB/s | 194.9 KiB | 00m00s [ 13/128] Installing librdmacm-0:51.0-5 100% | 50.8 MiB/s | 156.2 KiB | 00m00s [ 14/128] Installing cpp-0:14.2.1-7.fc4 100% | 74.5 MiB/s | 34.6 MiB | 00m00s [ 15/128] Installing cuda-gcc-13-0:13.3 100% | 109.9 MiB/s | 110.1 MiB | 00m01s [ 16/128] Installing tzdata-0:2025a-1.f 100% | 17.3 MiB/s | 1.9 MiB | 00m00s [ 17/128] Installing python-pip-wheel-0 100% | 310.4 MiB/s | 1.2 MiB | 00m00s [ 18/128] Installing mpdecimal-0:2.5.1- 100% | 100.6 MiB/s | 206.0 KiB | 00m00s [ 19/128] Installing libb2-0:0.98.1-12. 100% | 1.3 MiB/s | 43.3 KiB | 00m00s [ 20/128] Installing python3-libs-0:3.1 100% | 125.9 MiB/s | 40.8 MiB | 00m00s [ 21/128] Installing python3-0:3.13.2-1 100% | 32.7 MiB/s | 33.5 KiB | 00m00s [ 22/128] Installing cmake-rpm-macros-0 100% | 8.1 MiB/s | 8.3 KiB | 00m00s [ 23/128] Installing annobin-docs-0:12. 100% | 32.2 MiB/s | 98.8 KiB | 00m00s [ 24/128] Installing kernel-headers-0:6 100% | 85.7 MiB/s | 6.6 MiB | 00m00s [ 25/128] Installing libxcrypt-devel-0: 100% | 10.8 MiB/s | 33.1 KiB | 00m00s [ 26/128] Installing glibc-devel-0:2.40 100% | 72.6 MiB/s | 2.3 MiB | 00m00s [ 27/128] Installing gcc-0:14.2.1-7.fc4 100% | 124.1 MiB/s | 103.4 MiB | 00m01s [ 28/128] Installing libedit-0:3.1-54.2 100% | 78.4 MiB/s | 241.0 KiB | 00m00s [ 29/128] Installing vim-filesystem-2:9 100% | 1.2 MiB/s | 4.7 KiB | 00m00s [ 30/128] Installing libstdc++-devel-0: 100% | 59.2 MiB/s | 15.6 MiB | 00m00s [ 31/128] Installing gcc-c++-0:14.2.1-7 100% | 148.3 MiB/s | 37.7 MiB | 00m00s [ 32/128] Installing libcbor-0:0.11.0-2 100% | 36.8 MiB/s | 75.3 KiB | 00m00s [ 33/128] Installing libfido2-0:1.15.0- 100% | 117.1 MiB/s | 239.7 KiB | 00m00s [ 34/128] Installing openssh-0:9.9p1-2. 100% | 230.2 MiB/s | 1.4 MiB | 00m00s [ 35/128] Installing openssh-clients-0: 100% | 67.0 MiB/s | 2.7 MiB | 00m00s [ 36/128] Installing less-0:668-1.fc41. 100% | 100.0 MiB/s | 409.6 KiB | 00m00s [ 37/128] Installing git-core-0:2.48.1- 100% | 161.9 MiB/s | 22.5 MiB | 00m00s [ 38/128] Installing git-core-doc-0:2.4 100% | 112.9 MiB/s | 17.6 MiB | 00m00s [ 39/128] Installing isl-0:0.16.1-21.fc 100% | 109.0 MiB/s | 3.1 MiB | 00m00s [ 40/128] Installing cuda-toolkit-confi 100% | 0.0 B/s | 312.0 B | 00m00s [ 41/128] Installing cuda-toolkit-12-co 100% | 0.0 B/s | 316.0 B | 00m00s [ 42/128] Installing cuda-toolkit-12-6- 100% | 0.0 B/s | 124.0 B | 00m00s [ 43/128] Installing cuda-cudart-12-6-0 100% | 17.7 MiB/s | 762.4 KiB | 00m00s [ 44/128] Installing cuda-cccl-12-6-0:1 100% | 83.2 MiB/s | 11.9 MiB | 00m00s [ 45/128] Installing ncurses-0:6.5-2.20 100% | 32.6 MiB/s | 633.9 KiB | 00m00s [ 46/128] Installing groff-base-0:1.23. 100% | 86.1 MiB/s | 3.9 MiB | 00m00s [ 47/128] Installing perl-Digest-0:1.20 100% | 36.2 MiB/s | 37.1 KiB | 00m00s [ 48/128] Installing perl-Digest-MD5-0: 100% | 30.1 MiB/s | 61.7 KiB | 00m00s [ 49/128] Installing perl-B-0:1.89-514. 100% | 122.4 MiB/s | 501.4 KiB | 00m00s [ 50/128] Installing perl-FileHandle-0: 100% | 0.0 B/s | 9.8 KiB | 00m00s [ 51/128] Installing perl-MIME-Base32-0 100% | 31.4 MiB/s | 32.2 KiB | 00m00s [ 52/128] Installing perl-Data-Dumper-0 100% | 55.5 MiB/s | 113.6 KiB | 00m00s [ 53/128] Installing perl-libnet-0:3.15 100% | 48.0 MiB/s | 294.7 KiB | 00m00s [ 54/128] Installing perl-AutoLoader-0: 100% | 0.0 B/s | 20.9 KiB | 00m00s [ 55/128] Installing perl-IO-Socket-IP- 100% | 49.9 MiB/s | 102.2 KiB | 00m00s [ 56/128] Installing perl-URI-0:5.30-1. 100% | 43.9 MiB/s | 269.5 KiB | 00m00s [ 57/128] Installing perl-Text-Tabs+Wra 100% | 23.3 MiB/s | 23.9 KiB | 00m00s [ 58/128] Installing perl-Pod-Escapes-1 100% | 3.2 MiB/s | 25.9 KiB | 00m00s [ 59/128] Installing perl-if-0:0.61.000 100% | 6.1 MiB/s | 6.2 KiB | 00m00s [ 60/128] Installing perl-Time-Local-2: 100% | 68.9 MiB/s | 70.6 KiB | 00m00s [ 61/128] Installing perl-Net-SSLeay-0: 100% | 68.1 MiB/s | 1.4 MiB | 00m00s [ 62/128] Installing perl-File-Path-0:2 100% | 63.0 MiB/s | 64.5 KiB | 00m00s [ 63/128] Installing perl-locale-0:1.12 100% | 0.0 B/s | 6.9 KiB | 00m00s [ 64/128] Installing perl-IO-Socket-SSL 100% | 172.7 MiB/s | 707.4 KiB | 00m00s [ 65/128] Installing perl-Term-ANSIColo 100% | 48.4 MiB/s | 99.2 KiB | 00m00s [ 66/128] Installing perl-Term-Cap-0:1. 100% | 29.9 MiB/s | 30.6 KiB | 00m00s [ 67/128] Installing perl-Pod-Simple-1: 100% | 139.3 MiB/s | 570.5 KiB | 00m00s [ 68/128] Installing perl-POSIX-0:2.20- 100% | 115.4 MiB/s | 236.4 KiB | 00m00s [ 69/128] Installing perl-File-Temp-1:0 100% | 80.1 MiB/s | 164.1 KiB | 00m00s [ 70/128] Installing perl-IPC-Open3-0:1 100% | 22.7 MiB/s | 23.3 KiB | 00m00s [ 71/128] Installing perl-Class-Struct- 100% | 25.3 MiB/s | 25.9 KiB | 00m00s [ 72/128] Installing perl-HTTP-Tiny-0:0 100% | 76.4 MiB/s | 156.4 KiB | 00m00s [ 73/128] Installing perl-Socket-4:2.03 100% | 61.6 MiB/s | 126.1 KiB | 00m00s [ 74/128] Installing perl-Symbol-0:1.09 100% | 0.0 B/s | 7.2 KiB | 00m00s [ 75/128] Installing perl-SelectSaver-0 100% | 0.0 B/s | 2.6 KiB | 00m00s [ 76/128] Installing perl-File-stat-0:1 100% | 12.7 MiB/s | 13.1 KiB | 00m00s [ 77/128] Installing perl-podlators-1:6 100% | 104.6 MiB/s | 321.4 KiB | 00m00s [ 78/128] Installing perl-Pod-Perldoc-0 100% | 55.1 MiB/s | 169.3 KiB | 00m00s [ 79/128] Installing perl-Text-ParseWor 100% | 14.2 MiB/s | 14.6 KiB | 00m00s [ 80/128] Installing perl-Fcntl-0:1.18- 100% | 48.9 MiB/s | 50.1 KiB | 00m00s [ 81/128] Installing perl-base-0:2.27-5 100% | 0.0 B/s | 12.9 KiB | 00m00s [ 82/128] Installing perl-mro-0:1.29-51 100% | 11.4 MiB/s | 46.6 KiB | 00m00s [ 83/128] Installing perl-overloading-0 100% | 5.4 MiB/s | 5.5 KiB | 00m00s [ 84/128] Installing perl-IO-0:1.55-514 100% | 50.6 MiB/s | 155.3 KiB | 00m00s [ 85/128] Installing perl-Pod-Usage-4:2 100% | 84.3 MiB/s | 86.3 KiB | 00m00s [ 86/128] Installing perl-constant-0:1. 100% | 26.7 MiB/s | 27.4 KiB | 00m00s [ 87/128] Installing perl-parent-1:0.24 100% | 10.5 MiB/s | 10.7 KiB | 00m00s [ 88/128] Installing perl-Errno-0:1.38- 100% | 0.0 B/s | 8.7 KiB | 00m00s [ 89/128] Installing perl-Getopt-Std-0: 100% | 11.5 MiB/s | 11.7 KiB | 00m00s [ 90/128] Installing perl-File-Basename 100% | 14.2 MiB/s | 14.6 KiB | 00m00s [ 91/128] Installing perl-MIME-Base64-0 100% | 23.6 MiB/s | 48.4 KiB | 00m00s [ 92/128] Installing perl-vars-0:1.05-5 100% | 0.0 B/s | 4.3 KiB | 00m00s [ 93/128] Installing perl-Scalar-List-U 100% | 49.7 MiB/s | 152.6 KiB | 00m00s [ 94/128] Installing perl-overload-0:1. 100% | 70.3 MiB/s | 71.9 KiB | 00m00s [ 95/128] Installing perl-Storable-1:3. 100% | 114.3 MiB/s | 234.0 KiB | 00m00s [ 96/128] Installing perl-Getopt-Long-1 100% | 71.9 MiB/s | 147.2 KiB | 00m00s [ 97/128] Installing perl-Exporter-0:5. 100% | 54.3 MiB/s | 55.6 KiB | 00m00s [ 98/128] Installing perl-Carp-0:1.54-5 100% | 46.6 MiB/s | 47.7 KiB | 00m00s [ 99/128] Installing perl-DynaLoader-0: 100% | 31.7 MiB/s | 32.5 KiB | 00m00s [100/128] Installing perl-PathTools-0:3 100% | 61.4 MiB/s | 188.6 KiB | 00m00s [101/128] Installing perl-Encode-4:3.21 100% | 214.5 MiB/s | 4.7 MiB | 00m00s [102/128] Installing perl-libs-4:5.40.1 100% | 110.1 MiB/s | 9.9 MiB | 00m00s [103/128] Installing perl-interpreter-4 100% | 60.5 MiB/s | 124.0 KiB | 00m00s [104/128] Installing infiniband-diags-0 100% | 113.1 MiB/s | 1.0 MiB | 00m00s [105/128] Installing perl-TermReadKey-0 100% | 32.4 MiB/s | 66.3 KiB | 00m00s [106/128] Installing perl-Error-1:0.170 100% | 39.3 MiB/s | 80.5 KiB | 00m00s [107/128] Installing perl-File-Find-0:1 100% | 41.5 MiB/s | 42.5 KiB | 00m00s [108/128] Installing perl-lib-0:0.65-51 100% | 0.0 B/s | 8.9 KiB | 00m00s [109/128] Installing perl-Git-0:2.48.1- 100% | 63.5 MiB/s | 65.0 KiB | 00m00s [110/128] Installing git-0:2.48.1-1.fc4 100% | 85.4 MiB/s | 87.5 KiB | 00m00s [111/128] Installing emacs-filesystem-1 100% | 0.0 B/s | 544.0 B | 00m00s [112/128] Installing hiredis-0:1.2.0-3. 100% | 109.1 MiB/s | 111.8 KiB | 00m00s [113/128] Installing cuda-nvvm-12-6-0:1 100% | 159.9 MiB/s | 56.1 MiB | 00m00s [114/128] Installing cuda-crt-12-6-0:12 100% | 209.8 MiB/s | 859.4 KiB | 00m00s [115/128] Installing rhash-0:1.4.4-2.fc 100% | 115.6 MiB/s | 355.1 KiB | 00m00s [116/128] Installing jsoncpp-0:1.9.5-8. 100% | 22.6 MiB/s | 254.9 KiB | 00m00s [117/128] Installing cmake-data-0:3.30. 100% | 43.8 MiB/s | 8.8 MiB | 00m00s [118/128] Installing cmake-0:3.30.7-1.f 100% | 192.4 MiB/s | 32.7 MiB | 00m00s [119/128] Installing libnccl-0:2.25.1-1 100% | 218.8 MiB/s | 366.3 MiB | 00m02s [120/128] Installing libnccl-devel-0:2. 100% | 2.7 MiB/s | 41.5 KiB | 00m00s [121/128] Installing cuda-nvcc-12-6-0:1 100% | 232.8 MiB/s | 204.4 MiB | 00m01s [122/128] Installing hiredis-devel-0:1. 100% | 44.3 MiB/s | 181.5 KiB | 00m00s [123/128] Installing rdma-core-devel-0: 100% | 36.6 MiB/s | 674.6 KiB | 00m00s [124/128] Installing cuda-cudart-devel- 100% | 178.3 MiB/s | 6.8 MiB | 00m00s [125/128] Installing cuda-gcc-13-c++-0: 100% | 201.2 MiB/s | 61.0 MiB | 00m00s [126/128] Installing annobin-plugin-gcc 100% | 23.5 MiB/s | 986.7 KiB | 00m00s [127/128] Installing gcc-plugin-annobin 100% | 1.8 MiB/s | 61.1 KiB | 00m00s [128/128] Installing cuda-nvml-devel-12 100% | 5.6 MiB/s | 1.4 MiB | 00m00s Warning: skipped OpenPGP checks for 14 packages from repositories: copr_base, http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 Complete! Finish: build setup for gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Start: rpmbuild gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1600992000 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.v11p0T + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + test -d /builddir/build/BUILD/gloo-0.5.0-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/gloo-0.5.0-build + /usr/bin/rm -rf /builddir/build/BUILD/gloo-0.5.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.QK85gS + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + cd /builddir/build/BUILD/gloo-0.5.0-build + rm -rf gloo + /usr/bin/mkdir -p gloo + cd gloo + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + git clone --depth 1 -n -b main https://github.com/facebookincubator/gloo.git . Cloning into '.'... + git fetch --depth 1 origin 4ff6edf45ff1d314916db34d2df9bd4371417d74 From https://github.com/facebookincubator/gloo * branch 4ff6edf45ff1d314916db34d2df9bd4371417d74 -> FETCH_HEAD + git reset --hard 4ff6edf45ff1d314916db34d2df9bd4371417d74 HEAD is now at 4ff6edf Use multi_get for store that has extended API support. + git log --format=fuller commit 4ff6edf45ff1d314916db34d2df9bd4371417d74 Author: Xilun Wu <12968408+XilunWu@users.noreply.github.com> AuthorDate: Tue Feb 11 15:14:33 2025 -0800 Commit: GitHub CommitDate: Tue Feb 11 15:14:33 2025 -0800 Use multi_get for store that has extended API support. Differential Revision: D52083376 Pull Request resolved: https://github.com/facebookincubator/gloo/pull/408 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.IyDTlV + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd gloo + sed -i 's|30 35|35 80|g' cmake/Cuda.cmake + sed -i 's|-std=c++11|-std=c++17|' CMakeLists.txt + sed -i 's|DESTINATION lib)|DESTINATION lib64)|' CMakeLists.txt + sed -i 's|NAMES libuv.a libuv_a.a|NAMES libuv.so|' cmake/Dependencies.cmake + sed -i '/set_target_properties(uv/,/)/d' cmake/Dependencies.cmake + sed -i 's|/lib)|/lib64)|' gloo/CMakeLists.txt + sed -i 's|add_library(gloo ${GLOO_STATIC_OR_SHARED} ${GLOO_SRCS})|add_library(gloo ${GLOO_STATIC_OR_SHARED} ${GLOO_SRCS})\nset_target_properties(gloo PROPERTIES SOVERSION 1 VERSION 1.0)|' gloo/CMakeLists.txt + sed -i 's|cuda_add_library(gloo_cuda ${GLOO_CUDA_SRCS} ${GLOO_STATIC_OR_SHARED})|cuda_add_library(gloo_cuda ${GLOO_CUDA_SRCS} ${GLOO_STATIC_OR_SHARED})\nset_target_properties(gloo_cuda PROPERTIES SOVERSION 1 VERSION 1.0)|' gloo/CMakeLists.txt + sed -i 's|gloo PRIVATE uv_a|gloo PUBLIC uv|' gloo/CMakeLists.txt + sed -i 's|"${CMAKE_CURRENT_SOURCE_DIR}/gatherv.cc"|"${CMAKE_CURRENT_SOURCE_DIR}/gatherv.cc"\n "${CMAKE_CURRENT_SOURCE_DIR}/math.cc"|' gloo/CMakeLists.txt + sed -i 's|GLOO_USE_AVX ${USE_AVX}|GLOO_USE_AVX 0|g' gloo/CMakeLists.txt + sed -i '/cout.*NR_gettid/d' gloo/transport/tcp/buffer.cc + sed -i 's|#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,6,0)|#if 0|' gloo/common/linux.cc + sed -i '1i #include ' gloo/math.h + sed -i '1i #include ' gloo/types.h + mkdir build + pushd build ~/build/BUILD/gloo-0.5.0-build/gloo/build ~/build/BUILD/gloo-0.5.0-build/gloo + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + /usr/bin/cmake -DCMAKE_C_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_Fortran_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_INSTALL_FULL_SBINDIR:PATH=/usr/sbin -DCMAKE_INSTALL_SBINDIR:PATH=sbin -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DLIB_SUFFIX=64 -DBUILD_SHARED_LIBS:BOOL=ON .. -Wno-dev -DCMAKE_SKIP_RPATH=ON -DCMAKE_VERBOSE_MAKEFILE=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DUSE_AVX=OFF '-DCMAKE_CXX_FLAGS=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mf16c' -DUSE_REDIS=ON -DUSE_RCCL=ON -DUSE_IBVERBS=ON -DUSE_CUDA=ON -DUSE_NCCL=ON -DNVCC_FLAGS_EXTRA=Auto -DCUDA_GENERATION= '-DCUDA_ARCH_BIN=5.2;6.1;7.5;8.6;9.0' -DCUDA_ARCH_PTX=5.2 -DCUDA_PROPAGATE_HOST_FLAGS=OFF -DCUDA_HOST_COMPILER=/usr/bin/cuda-gcc '-DCUDA_NVCC_FLAGS=-Wno-deprecated-gpu-targets -allow-unsupported-compiler' -DUSE_AVX=ON -DUSE_MPI=OFF -DUSE_LIBUV=ON -DBUILD_TEST=OFF -DBUILD_EXAMPLES=OFF -DBUILD_BENCHMARK=OFF -- The CXX compiler identification is GNU 14.2.1 -- The C compiler identification is GNU 14.2.1 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/g++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/gcc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Gloo build as SHARED library -- Found hiredis: /usr/include/hiredis -- Found ibverbs: /usr/include -- Found PkgConfig: /usr/bin/pkg-config (found version "2.3.0") -- Checking for one of the modules 'libuv>=1.26' -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found CUDA: /usr/local/cuda (found suitable version "12.6", minimum required is "7.0") -- CUDA detected: 12.6 -- Added CUDA NVCC flags for: compute_52 -- Found NCCL: /usr/include -- Determining NCCL version from the header file: /usr/include/nccl.h -- NCCL_MAJOR_VERSION: 2 -- Found NCCL (include: /usr/include, library: /lib64/libnccl.so) -- Configuring done (1.2s) -- Generating done (0.0s) CMake Warning: Manually-specified variables were not used by the project: CMAKE_CXX_FLAGS_RELEASE CMAKE_C_FLAGS_RELEASE CMAKE_Fortran_FLAGS_RELEASE CMAKE_INSTALL_DO_STRIP CMAKE_INSTALL_FULL_SBINDIR CMAKE_INSTALL_SBINDIR CUDA_ARCH_BIN CUDA_GENERATION INCLUDE_INSTALL_DIR LIB_INSTALL_DIR LIB_SUFFIX SHARE_INSTALL_PREFIX SYSCONF_INSTALL_DIR USE_AVX -- Build files have been written to: /builddir/build/BUILD/gloo-0.5.0-build/gloo/build + make -j2 [ 1%] Building CXX object gloo/CMakeFiles/gloo.dir/algorithm.cc.o [ 3%] Building CXX object gloo/CMakeFiles/gloo.dir/allgather.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc: In function ‘void gloo::allgather(AllgatherOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:39:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 39 | GLOO_ENFORCE_EQ(out->size, in->size * context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(out->gloo::transport::UnboundBuffer::size, (((long unsigned int)in->gloo::transport::UnboundBuffer::size) * ((long unsigned int)((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size))))’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:39:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 39 | GLOO_ENFORCE_EQ(out->size, in->size * context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:41:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 41 | GLOO_ENFORCE_EQ(out->size % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)out->gloo::transport::UnboundBuffer::size) % ((long unsigned int)((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size))), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:41:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 41 | GLOO_ENFORCE_EQ(out->size % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgather.cc:41:5: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 4%] Building CXX object gloo/CMakeFiles/gloo.dir/allgatherv.cc.o [ 6%] Building CXX object gloo/CMakeFiles/gloo.dir/allreduce.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc: In member function ‘void gloo::AllgathervOptions::setOutput(std::unique_ptr, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:53:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 53 | GLOO_ENFORCE_EQ(elements_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elements_2.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AllgathervOptions*)this)->gloo::AllgathervOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:53:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 53 | GLOO_ENFORCE_EQ(elements_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:55:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)totalElements) * elementSize_2), buf.std::unique_ptr::operator->()->gloo::transport::UnboundBuffer::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:55:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc: In member function ‘void gloo::AllgathervOptions::setOutput(void*, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:66:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(elements_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elements_2.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AllgathervOptions*)this)->gloo::AllgathervOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:66:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(elements_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allgatherv.cc:53:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘void gloo::{anonymous}::allreduce(const gloo::detail::AllreduceOptionsImpl&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:107:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 107 | GLOO_ENFORCE_GT(out.size(), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater((& out)->std::vector >::size(), 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:107:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 107 | GLOO_ENFORCE_GT(out.size(), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘void gloo::{anonymous}::ring(const gloo::detail::AllreduceOptionsImpl&, ReduceRangeFunction, BroadcastRangeFunction)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:214:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 214 | GLOO_ENFORCE_EQ(numSegments % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)numSegments) % ((long unsigned int)((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size))), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:214:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 214 | GLOO_ENFORCE_EQ(numSegments % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:215:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 215 | GLOO_ENFORCE_GE(numSegments, context->size * 2); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(numSegments, (((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size) * 2))’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:215:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 215 | GLOO_ENFORCE_GE(numSegments, context->size * 2); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:278:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 278 | for (auto i = 0; i < (numSegments - numSegmentsPerRank + 2); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:306:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 306 | if (i < (numSegments - numSegmentsPerRank)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:314:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 314 | if (i < numSegmentsPerRank) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:361:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 361 | for (auto i = 0; i < (numSegments - numSegmentsPerRank + 2); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:378:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 378 | if (i < (numSegments - numSegmentsPerRank)) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:386:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 386 | if (i < numSegmentsPerRank) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘std::vector gloo::{anonymous}::computeGroupSizePerStep(size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:399:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 399 | GLOO_ENFORCE_GT(n, 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater(n, 1)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:399:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 399 | GLOO_ENFORCE_GT(n, 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘void gloo::{anonymous}::bcube(const gloo::detail::AllreduceOptionsImpl&, ReduceRangeFunction, BroadcastRangeFunction)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:526:15: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 526 | if (src == context->rank) { | ~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:539:15: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 539 | if (dst == context->rank) { | ~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:565:16: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 565 | if (peer == context->rank) { | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:582:15: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 582 | if (src == context->rank) { | ~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:612:15: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 612 | if (src == context->rank) { | ~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:632:15: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 632 | if (dst == context->rank) { | ~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:645:16: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 645 | if (peer == context->rank) { | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:655:16: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 655 | if (peer == context->rank) { | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Greater(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:107:3: required from here 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:123:29: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 123 | BINARY_COMP_HELPER(Greater, >) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:214:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::GreaterEquals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:215:3: required from here 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:124:35: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 124 | BINARY_COMP_HELPER(GreaterEquals, >=) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 7%] Building CXX object gloo/CMakeFiles/gloo.dir/allreduce_local.cc.o In member function ‘gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group::operator=(group&&)’, inlined from ‘std::swap, std::function)::group>(gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group&, gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group&)std::enable_if, std::function)::group> >, std::is_move_constructible, std::function)::group>, std::is_move_assignable, std::function)::group> >::value, void>::type’ at /usr/include/c++/14/bits/move.h:235:11, inlined from ‘gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)’ at /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:501:16, inlined from ‘gloo::(anonymous namespace)::allreduce(gloo::detail::AllreduceOptionsImpl const&)’ at /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:140:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:442:10: warning: ‘nextGroup’ may be used uninitialized [-Wmaybe-uninitialized] 442 | struct group { | ^~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘gloo::(anonymous namespace)::allreduce(gloo::detail::AllreduceOptionsImpl const&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:497:20: note: ‘nextGroup’ declared here 497 | struct group nextGroup; | ^~~~~~~~~ In member function ‘gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group::operator=(group&&)’, inlined from ‘std::swap, std::function)::group>(gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group&, gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)::group&)std::enable_if, std::function)::group> >, std::is_move_constructible, std::function)::group>, std::is_move_assignable, std::function)::group> >::value, void>::type’ at /usr/include/c++/14/bits/move.h:235:11, inlined from ‘gloo::(anonymous namespace)::bcube(gloo::detail::AllreduceOptionsImpl const&, std::function, std::function)’ at /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:501:16, inlined from ‘gloo::(anonymous namespace)::allreduce(gloo::detail::AllreduceOptionsImpl const&)’ at /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:140:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:442:10: warning: ‘nextGroup.myChunkLength’ may be used uninitialized [-Wmaybe-uninitialized] 442 | struct group { | ^~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc: In function ‘gloo::(anonymous namespace)::allreduce(gloo::detail::AllreduceOptionsImpl const&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce.cc:497:20: note: ‘nextGroup’ declared here 497 | struct group nextGroup; | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:42:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:43:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:44:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:45:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:46:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:47:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:48:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:49:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:35:11: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct gloo::float16’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 35 | memcpy(ptrs_[i], ptrs_[0], bytes_); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:97:19: note: ‘struct gloo::float16’ declared here 97 | struct alignas(2) float16 { | ^~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc: In instantiation of ‘void gloo::AllreduceLocal::run() [with T = char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:51:1: required from here 40 | #define INSTANTIATE_TEMPLATE(T) template class AllreduceLocal; | ^~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:30:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/allreduce_local.cc:34:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (int i = 1; i < ptrs_.size(); i++) { | ~~^~~~~~~~~~~~~~ [ 9%] Building CXX object gloo/CMakeFiles/gloo.dir/alltoall.cc.o [ 10%] Building CXX object gloo/CMakeFiles/gloo.dir/alltoallv.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc: In member function ‘void gloo::AlltoallvOptions::setInput(std::unique_ptr, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:52:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 52 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AlltoallvOptions*)this)->gloo::AlltoallvOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:52:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 52 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)totalElements) * elementSize_2), buf.std::unique_ptr::operator->()->gloo::transport::UnboundBuffer::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc: In member function ‘void gloo::AlltoallvOptions::setInput(void*, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:71:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 71 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AlltoallvOptions*)this)->gloo::AlltoallvOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:71:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 71 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc: In member function ‘void gloo::AlltoallvOptions::setOutput(std::unique_ptr, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:89:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 89 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AlltoallvOptions*)this)->gloo::AlltoallvOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:89:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 89 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 97 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)totalElements) * elementSize_2), buf.std::unique_ptr::operator->()->gloo::transport::UnboundBuffer::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 97 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc: In member function ‘void gloo::AlltoallvOptions::setOutput(void*, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 108 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::AlltoallvOptions*)this)->gloo::AlltoallvOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 108 | GLOO_ENFORCE_EQ(elementsPerRank.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/alltoallv.cc:52:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 12%] Building CXX object gloo/CMakeFiles/gloo.dir/barrier.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/barrier.cc: In function ‘void gloo::barrier(BarrierOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/barrier.cc:30:24: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 30 | for (size_t d = 1; d < context->size; d <<= 1) { | ~~^~~~~~~~~~~~~~~ [ 14%] Building CXX object gloo/CMakeFiles/gloo.dir/broadcast.cc.o [ 15%] Building CXX object gloo/CMakeFiles/gloo.dir/context.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/broadcast.cc: In function ‘void gloo::broadcast(BroadcastOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/broadcast.cc:92:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 92 | for (auto i = 0; i < numSends; i++) { | ~~^~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc: In constructor ‘gloo::Context::Context(int, int, int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:22:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 22 | GLOO_ENFORCE_GE(rank, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(rank, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:22:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 22 | GLOO_ENFORCE_GE(rank, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:24:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 24 | GLOO_ENFORCE_GE(size, 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(size, 1)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:24:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 24 | GLOO_ENFORCE_GE(size, 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc: In member function ‘int gloo::Context::nextSlot(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:46:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 46 | GLOO_ENFORCE_GT(numToSkip, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater(numToSkip, 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.cc:46:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 46 | GLOO_ENFORCE_GT(numToSkip, 0); | ^~~~~~~~~~~~~~~ [ 17%] Building CXX object gloo/CMakeFiles/gloo.dir/gather.cc.o [ 18%] Building CXX object gloo/CMakeFiles/gloo.dir/gatherv.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gather.cc: In function ‘void gloo::gather(GatherOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gather.cc:36:26: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 36 | for (size_t i = 0; i < context->size; i++) { | ~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gather.cc:37:13: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 37 | if (i == context->rank) { | ~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gather.cc:50:26: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 50 | for (size_t i = 0; i < context->size; i++) { | ~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gather.cc:51:13: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 51 | if (i == context->rank) { | ~~^~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc: In member function ‘void gloo::GathervOptions::setOutput(std::unique_ptr, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:53:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 53 | GLOO_ENFORCE_EQ(elementsPerRank_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank_2.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::GathervOptions*)this)->gloo::GathervOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:53:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 53 | GLOO_ENFORCE_EQ(elementsPerRank_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:55:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)totalElements) * elementSize_2), buf.std::unique_ptr::operator->()->gloo::transport::UnboundBuffer::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:55:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ(totalElements * elementSize_2, buf->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc: In member function ‘void gloo::GathervOptions::setOutput(void*, std::vector, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:66:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(elementsPerRank_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(elementsPerRank_2.std::vector::size(), ((std::__shared_ptr_access*)(&((gloo::GathervOptions*)this)->gloo::GathervOptions::context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:66:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(elementsPerRank_2.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/gatherv.cc:53:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 20%] Building CXX object gloo/CMakeFiles/gloo.dir/math.cc.o [ 21%] Building CXX object gloo/CMakeFiles/gloo.dir/reduce.cc.o [ 23%] Building CXX object gloo/CMakeFiles/gloo.dir/scatter.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc: In function ‘void gloo::reduce(ReduceOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 50 | GLOO_ENFORCE_EQ(in->size, opts.elements * opts.elementSize); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(in->gloo::transport::UnboundBuffer::size, (opts.gloo::ReduceOptions::elements * opts.gloo::ReduceOptions::elementSize))’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 50 | GLOO_ENFORCE_EQ(in->size, opts.elements * opts.elementSize); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:51:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 51 | GLOO_ENFORCE_EQ(out->size, opts.elements * opts.elementSize); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(out->gloo::transport::UnboundBuffer::size, (opts.gloo::ReduceOptions::elements * opts.gloo::ReduceOptions::elementSize))’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:51:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 51 | GLOO_ENFORCE_EQ(out->size, opts.elements * opts.elementSize); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:118:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 118 | GLOO_ENFORCE_EQ(numSegments % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((((long unsigned int)numSegments) % ((long unsigned int)((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size))), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:118:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 118 | GLOO_ENFORCE_EQ(numSegments % context->size, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:119:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 119 | GLOO_ENFORCE_GE(numSegments, context->size * 2); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(numSegments, (((int)((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size) * 2))’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:119:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 119 | GLOO_ENFORCE_GE(numSegments, context->size * 2); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:171:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 171 | for (auto i = 0; i < numSegments; i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:187:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 187 | if ((i - 2) < numSegmentsPerRank) { | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:199:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 199 | if (i < (numSegments - 2)) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:206:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 206 | if (i < numSegmentsPerRank) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:223:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 223 | for (size_t rank = 0; rank < context->size; rank++) { | ~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:224:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 224 | if (rank == context->rank) { | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:118:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::GreaterEquals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/reduce.cc:119:3: required from here 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:124:35: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 124 | BINARY_COMP_HELPER(GreaterEquals, >=) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc: In function ‘void gloo::scatter(ScatterOptions&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:31:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 31 | GLOO_ENFORCE_EQ(in.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& in)->std::vector >::size(), ((const std::__shared_ptr_access*)(& context))->std::__shared_ptr_access::operator->()->gloo::Context::size)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:31:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 31 | GLOO_ENFORCE_EQ(in.size(), context->size); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:40:26: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 40 | for (size_t i = 0; i < context->size; i++) { | ~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:41:13: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 41 | if (i == context->rank) { | ~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:51:26: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 51 | for (size_t i = 0; i < context->size; i++) { | ~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:52:13: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 52 | if (i == context->rank) { | ~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/scatter.cc:31:5: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 25%] Building CXX object gloo/CMakeFiles/gloo.dir/types.cc.o [ 26%] Building CXX object gloo/CMakeFiles/gloo.dir/common/logging.cc.o [ 28%] Building CXX object gloo/CMakeFiles/gloo.dir/common/utils.cc.o [ 29%] Building CXX object gloo/CMakeFiles/gloo.dir/common/linux.cc.o [ 31%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/context.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc: In function ‘std::vector > gloo::pciDevices(PCIClassMatch)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:97:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 97 | if (match.value != (pciGetClass(device) & match.mask)) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:31: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc: In function ‘std::string gloo::pciPath(const std::string&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:111:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 111 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:111:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 111 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:112:3: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 112 | GLOO_ENFORCE_LT(rv, buf.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(rv, buf.std::array::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:112:3: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 112 | GLOO_ENFORCE_LT(rv, buf.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc: In function ‘int gloo::pciDistance(const std::string&, const std::string&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:135:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 135 | if (prefixLength == partsA.size()) { | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:139:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (prefixLength == partsB.size()) { | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = long int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/linux.cc:112:3: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const long int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/context.h:17, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/context.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/context.cc: In member function ‘std::shared_ptr gloo::rendezvous::ContextFactory::makeContext(std::shared_ptr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/context.cc:122:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 122 | GLOO_ENFORCE_LE(addressSize, sendData_[i].size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(addressSize, (&((gloo::rendezvous::ContextFactory*)this)->gloo::rendezvous::ContextFactory::sendData_.std::vector >::operator[](((std::vector >::size_type)i)))->std::vector::size())’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/context.cc:122:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 122 | GLOO_ENFORCE_LE(addressSize, sendData_[i].size()); | ^~~~~~~~~~~~~~~ [ 32%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/file_store.cc.o [ 34%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/hash_store.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/store.h:16, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc: In member function ‘std::string gloo::rendezvous::FileStore::realPath(const std::string&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:47:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 47 | GLOO_ENFORCE_EQ(buf.data(), ret, "realpath: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(buf.std::array::data(), ret)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:47:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 47 | GLOO_ENFORCE_EQ(buf.data(), ret, "realpath: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc: In member function ‘virtual void gloo::rendezvous::FileStore::set(const std::string&, const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:94:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(rv, 0, "rename: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:94:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(rv, 0, "rename: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc: In member function ‘virtual std::vector gloo::rendezvous::FileStore::get(const std::string&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:111:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 111 | GLOO_ENFORCE_GT(n, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater(n, 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:111:3: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 111 | GLOO_ENFORCE_GT(n, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc: In member function ‘bool gloo::rendezvous::FileStore::check(const std::vector >&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:129:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 129 | GLOO_ENFORCE_EQ(errno, ENOENT); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((*(const int*)__errno_location()), 2)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:129:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 129 | GLOO_ENFORCE_EQ(errno, ENOENT); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Greater(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/file_store.cc:111:3: required from here 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:123:29: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 123 | BINARY_COMP_HELPER(Greater, >) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ [ 35%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/prefix_store.cc.o [ 37%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/store.cc.o [ 39%] Building CXX object gloo/CMakeFiles/gloo.dir/rendezvous/redis_store.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/store.h:16, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc: In member function ‘virtual void gloo::rendezvous::RedisStore::set(const std::string&, const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 50 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_INTEGER); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(reply->redisReply::type, 3)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 50 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_INTEGER); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:51:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 51 | GLOO_ENFORCE_EQ(reply->integer, 1, "Key '", key, "' already set"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(reply->redisReply::integer, 1)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:51:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 51 | GLOO_ENFORCE_EQ(reply->integer, 1, "Key '", key, "' already set"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc: In member function ‘virtual std::vector gloo::rendezvous::RedisStore::get(const std::string&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:68:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 68 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_STRING); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(reply->redisReply::type, 1)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:68:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 68 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_STRING); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc: In member function ‘bool gloo::rendezvous::RedisStore::check(const std::vector >&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 97 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_INTEGER); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(reply->redisReply::type, 3)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 97 | GLOO_ENFORCE_EQ(reply->type, REDIS_REPLY_INTEGER); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/rendezvous/redis_store.cc:98:33: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | auto result = (reply->integer == keys.size()); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [ 40%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/address.cc.o [ 42%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/buffer.cc.o [ 43%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/context.cc.o [ 45%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/device.cc.o [ 46%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/pair.cc.o [ 48%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/unbound_buffer.cc.o [ 50%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/address.cc.o [ 51%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/buffer.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:16: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc: In constructor ‘gloo::transport::tcp::Address::Address(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:46:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 46 | GLOO_ENFORCE_EQ(sizeof(impl_), bytes.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(sizeof (((gloo::transport::tcp::Address*)this)->gloo::transport::tcp::Address::impl_), (& bytes)->std::vector::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:46:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 46 | GLOO_ENFORCE_EQ(sizeof(impl_), bytes.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc: In static member function ‘static gloo::transport::tcp::Address gloo::transport::tcp::Address::fromSockName(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:98:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 98 | GLOO_ENFORCE_NE(rv, -1, "getsockname: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:98:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 98 | GLOO_ENFORCE_NE(rv, -1, "getsockname: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc: In static member function ‘static gloo::transport::tcp::Address gloo::transport::tcp::Address::fromPeerName(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 108 | GLOO_ENFORCE_NE(rv, -1, "getpeername: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/address.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 108 | GLOO_ENFORCE_NE(rv, -1, "getpeername: ", strerror(errno)); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.h:19, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc: In member function ‘virtual void gloo::transport::tcp::Buffer::waitSend()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:91:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 91 | GLOO_ENFORCE_GE(1, sendCompletions_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(1, ((gloo::transport::tcp::Buffer*)this)->gloo::transport::tcp::Buffer::sendCompletions_)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:91:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 91 | GLOO_ENFORCE_GE(1, sendCompletions_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:103:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 103 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater, int>(((gloo::transport::tcp::Buffer*)this)->gloo::transport::tcp::Buffer::sendPending_, 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:103:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 103 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc: In member function ‘virtual void gloo::transport::tcp::Buffer::send(size_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:127:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 127 | GLOO_ENFORCE_LE(offset + length, size_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + length), ((gloo::transport::tcp::Buffer*)this)->gloo::transport::tcp::Buffer::gloo::transport::Buffer.gloo::transport::Buffer::size_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/buffer.cc:127:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 127 | GLOO_ENFORCE_LE(offset + length, size_); | ^~~~~~~~~~~~~~~ [ 53%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/context.cc.o [ 54%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/device.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.h:20, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc: In member function ‘std::vector gloo::transport::tcp::Context::getConnectedPeerRanks() const’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:176:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 176 | GLOO_ENFORCE(size == pairs_.size()); | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:44:11: note: in definition of macro ‘GLOO_ENFORCE’ 44 | if (!(condition)) { \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc: In member function ‘std::vector gloo::transport::tcp::Context::getUnConnectedPeerRanks() const’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:187:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 187 | GLOO_ENFORCE(size == pairs_.size()); | ~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:44:11: note: in definition of macro ‘GLOO_ENFORCE’ 44 | if (!(condition)) { \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc: In member function ‘void gloo::transport::tcp::Context::printConnectivityInfo() const’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:206:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 206 | for (int i = 0; i < unConnectedPeers.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:207:13: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 207 | if (i != unConnectedPeers.size() - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc: In constructor ‘gloo::transport::tcp::Rank::Rank(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:345:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 345 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((pairIdChunkSz % sizeof (ssize_t)), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:345:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 345 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:345:5: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc: In function ‘void gloo::transport::tcp::lookupAddrForIface(attr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:31:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 31 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:31:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 31 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc: In function ‘void gloo::transport::tcp::lookupAddrForHostname(attr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 97 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:97:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 97 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc: In function ‘gloo::transport::tcp::attr gloo::transport::tcp::CreateDeviceAttr(const attr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:149:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 149 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:149:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 149 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc: In function ‘const std::string gloo::transport::tcp::sockaddrToInterfaceName(const attr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:177:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 177 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:177:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 177 | GLOO_ENFORCE_NE(rv, -1, strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc: In member function ‘bool gloo::transport::tcp::Device::isInitiator(const gloo::transport::tcp::Address&, const gloo::transport::tcp::Address&) const’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:294:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 294 | GLOO_ENFORCE_NE(rv, 0, "Cannot connect to self"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, 0)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:294:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 294 | GLOO_ENFORCE_NE(rv, 0, "Cannot connect to self"); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/device.cc:21: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h: In instantiation of ‘void gloo::transport::tcp::WriteValueOperation::handleEvents(int) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h:128:8: required from here 128 | void handleEvents(int events) override { | ^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h:141:12: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare] 141 | if (rv < sizeof(t_)) { | ~~~^~~~~~~~~~~~ [ 56%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/error.cc.o [ 57%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/listener.cc.o [ 59%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/loop.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/listener.cc:17: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h: In instantiation of ‘void gloo::transport::tcp::ReadValueOperation::handleEvents(int) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h:54:8: required from here 54 | void handleEvents(int events) override { | ^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/helpers.h:67:12: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘long unsigned int’ [-Wsign-compare] 67 | if (rv < sizeof(t_)) { | ~~~^~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:18: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In constructor ‘gloo::transport::tcp::Deferrables::Deferrables()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:47:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 47 | GLOO_ENFORCE_NE(rv, -1, "pipe: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:47:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 47 | GLOO_ENFORCE_NE(rv, -1, "pipe: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In member function ‘void gloo::transport::tcp::Deferrables::defer(function_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:69:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 69 | GLOO_ENFORCE_NE(rv, -1, "write: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:69:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 69 | GLOO_ENFORCE_NE(rv, -1, "write: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In member function ‘virtual void gloo::transport::tcp::Deferrables::handleEvents(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:90:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 90 | GLOO_ENFORCE_NE(rv, -1, "read: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:90:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 90 | GLOO_ENFORCE_NE(rv, -1, "read: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In constructor ‘gloo::transport::tcp::Loop::Loop()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:104:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 104 | GLOO_ENFORCE_NE(fd_, -1, "epoll_create: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(((gloo::transport::tcp::Loop*)this)->gloo::transport::tcp::Loop::fd_, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:104:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 104 | GLOO_ENFORCE_NE(fd_, -1, "epoll_create: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In member function ‘void gloo::transport::tcp::Loop::registerDescriptor(int, int, gloo::transport::tcp::Handler*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:128:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 128 | GLOO_ENFORCE_NE(rv, -1, "epoll_ctl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:128:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 128 | GLOO_ENFORCE_NE(rv, -1, "epoll_ctl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In member function ‘void gloo::transport::tcp::Loop::unregisterDescriptor(int, gloo::transport::tcp::Handler*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:133:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 133 | GLOO_ENFORCE_NE(rv, -1, "epoll_ctl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:133:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 133 | GLOO_ENFORCE_NE(rv, -1, "epoll_ctl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc: In member function ‘void gloo::transport::tcp::Loop::run()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:165:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 165 | GLOO_ENFORCE_NE(nfds, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(nfds, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/loop.cc:165:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 165 | GLOO_ENFORCE_NE(nfds, -1); | ^~~~~~~~~~~~~~~ [ 60%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/pair.cc.o [ 62%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/socket.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.h:30, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘virtual void gloo::transport::tcp::Pair::connect(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:106:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 106 | GLOO_ENFORCE_EQ(state_, INITIALIZING); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::tcp::Pair*)this)->gloo::transport::tcp::Pair::state_, gloo::transport::tcp::Pair::INITIALIZING)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:106:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 106 | GLOO_ENFORCE_EQ(state_, INITIALIZING); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In function ‘void gloo::transport::tcp::setSocketBlocking(int, bool)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:174:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 174 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:174:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 174 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:181:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 181 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:181:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 181 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘ssize_t gloo::transport::tcp::Pair::prepareRead(gloo::transport::tcp::Op&, gloo::NonOwningPtr&, iovec&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:419:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 419 | GLOO_ENFORCE_LE(op.preamble.roffset + op.preamble.length, op.buf->size_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((op.gloo::transport::tcp::Op::preamble.gloo::transport::tcp::Op::::roffset + op.gloo::transport::tcp::Op::preamble.gloo::transport::tcp::Op::::length), op.gloo::transport::tcp::Op::buf->gloo::transport::tcp::Buffer::gloo::transport::Buffer.gloo::transport::Buffer::size_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:419:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 419 | GLOO_ENFORCE_LE(op.preamble.roffset + op.preamble.length, op.buf->size_); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:16: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In static member function ‘static std::shared_ptr gloo::transport::tcp::Socket::createForFamily(sa_family_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:24:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 24 | GLOO_ENFORCE_NE(rv, -1, "socket: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:24:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 24 | GLOO_ENFORCE_NE(rv, -1, "socket: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::reuseAddr(bool)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:39:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 39 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:39:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 39 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::noDelay(bool)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:45:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 45 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:45:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 45 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::block(bool)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 50 | GLOO_ENFORCE_NE(rv, -1, "fcntl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:50:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 50 | GLOO_ENFORCE_NE(rv, -1, "fcntl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:59:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 59 | GLOO_ENFORCE_NE(rv, -1, "fcntl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:59:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 59 | GLOO_ENFORCE_NE(rv, -1, "fcntl: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::configureTimeout(int, std::chrono::milliseconds)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:68:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 68 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:68:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 68 | GLOO_ENFORCE_NE(rv, -1, "setsockopt: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::bind(const sockaddr*, socklen_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:95:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 95 | GLOO_ENFORCE_NE(rv, -1, "bind: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:95:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 95 | GLOO_ENFORCE_NE(rv, -1, "bind: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘virtual void gloo::transport::tcp::Pair::handleEvents(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:654:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 654 | GLOO_ENFORCE_LE(state_, CONNECTED); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(((gloo::transport::tcp::Pair*)this)->gloo::transport::tcp::Pair::state_, gloo::transport::tcp::Pair::CONNECTED)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:654:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 654 | GLOO_ENFORCE_LE(state_, CONNECTED); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::listen(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:100:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 100 | GLOO_ENFORCE_NE(rv, -1, "listen: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:100:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 100 | GLOO_ENFORCE_NE(rv, -1, "listen: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc: In member function ‘void gloo::transport::tcp::Socket::connect(const sockaddr*, socklen_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:142:9: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 142 | GLOO_ENFORCE_NE(rv, -1, "connect: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/socket.cc:142:9: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 142 | GLOO_ENFORCE_NE(rv, -1, "connect: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘virtual void gloo::transport::tcp::Pair::verifyConnected()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:775:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 775 | GLOO_ENFORCE_GE( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::transport::tcp::Pair*)this)->gloo::transport::tcp::Pair::state_, gloo::transport::tcp::Pair::CONNECTED)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:775:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 775 | GLOO_ENFORCE_GE( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘void gloo::transport::tcp::Pair::send(gloo::transport::tcp::Op&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:842:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 842 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:842:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 842 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:844:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 844 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:844:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 844 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘virtual void gloo::transport::tcp::Pair::send(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:892:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 892 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:892:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 892 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘virtual void gloo::transport::tcp::Pair::recv(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:925:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 925 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:925:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 925 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc: In member function ‘bool gloo::transport::tcp::Pair::tryRecv(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:954:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 954 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/pair.cc:954:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 954 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ [ 64%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/unbound_buffer.cc.o [ 65%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/address.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/address.cc:15: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/address.cc: In constructor ‘gloo::transport::ibverbs::Address::Address(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/address.cc:26:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 26 | GLOO_ENFORCE_EQ(sizeof(addr_), bytes.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(sizeof (((gloo::transport::ibverbs::Address*)this)->gloo::transport::ibverbs::Address::addr_), (& bytes)->std::vector::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/address.cc:26:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 26 | GLOO_ENFORCE_EQ(sizeof(addr_), bytes.size()); | ^~~~~~~~~~~~~~~ [ 67%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/buffer.cc.o [ 68%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/context.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.h:20, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc: In destructor ‘virtual gloo::transport::ibverbs::Buffer::~Buffer()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:62:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 62 | GLOO_ENFORCE_EQ(sendPending_, 0, "Destructing buffer expecting completions"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals, int>(((gloo::transport::ibverbs::Buffer*)this)->gloo::transport::ibverbs::Buffer::sendPending_, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:62:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 62 | GLOO_ENFORCE_EQ(sendPending_, 0, "Destructing buffer expecting completions"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:62:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 62 | GLOO_ENFORCE_EQ(sendPending_, 0, "Destructing buffer expecting completions"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:62:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 62 | GLOO_ENFORCE_EQ(sendPending_, 0, "Destructing buffer expecting completions"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc: In member function ‘virtual void gloo::transport::ibverbs::Buffer::waitSend()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:123:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 123 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater, int>(((gloo::transport::ibverbs::Buffer*)this)->gloo::transport::ibverbs::Buffer::sendPending_, 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:123:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 123 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:144:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 144 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater, int>(((gloo::transport::ibverbs::Buffer*)this)->gloo::transport::ibverbs::Buffer::sendPending_, 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:144:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 144 | GLOO_ENFORCE_GT(sendPending_, 0, "No send to wait for"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc: In member function ‘virtual void gloo::transport::ibverbs::Buffer::send(size_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:173:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 173 | GLOO_ENFORCE_LE(offset + length, size_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + length), ((gloo::transport::ibverbs::Buffer*)this)->gloo::transport::ibverbs::Buffer::gloo::transport::Buffer.gloo::transport::Buffer::size_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/buffer.cc:173:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 173 | GLOO_ENFORCE_LE(offset + length, size_); | ^~~~~~~~~~~~~~~ [ 70%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/device.cc.o [ 71%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/memory_region.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc: In constructor ‘gloo::transport::ibverbs::Device::Device(const gloo::transport::ibverbs::attr&, ibv_context*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 108 | GLOO_ENFORCE_EQ(rv, 0, "ibv_query_device: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:108:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 108 | GLOO_ENFORCE_EQ(rv, 0, "ibv_query_device: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:112:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 112 | GLOO_ENFORCE_EQ(rv, 0, "ibv_query_port: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:112:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 112 | GLOO_ENFORCE_EQ(rv, 0, "ibv_query_port: ", strerror(errno)); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc: In destructor ‘virtual gloo::transport::ibverbs::Device::~Device()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:135:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 135 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:135:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 135 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:138:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 138 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:138:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 138 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:141:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 141 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:141:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 141 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:135:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 135 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:135:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 135 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:138:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 138 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:138:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 138 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:141:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 141 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:141:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 141 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc: In member function ‘void gloo::transport::ibverbs::Device::loop()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:177:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 177 | GLOO_ENFORCE_NE(flags, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(flags, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:177:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 177 | GLOO_ENFORCE_NE(flags, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:180:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 180 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:180:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 180 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:191:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 191 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:191:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 191 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:200:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 200 | GLOO_ENFORCE_EQ(rv, 0, "ibv_get_cq_event"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.cc:200:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 200 | GLOO_ENFORCE_EQ(rv, 0, "ibv_get_cq_event"); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc: In destructor ‘gloo::transport::ibverbs::MemoryRegion::~MemoryRegion()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc:37:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 37 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc:37:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 37 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc:37:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 37 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/memory_region.cc:37:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 37 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ [ 73%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/pair.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.h:23, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In constructor ‘gloo::transport::ibverbs::Pair::Pair(const std::shared_ptr&, std::chrono::milliseconds)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:47:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 47 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:47:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 47 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:77:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 77 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:77:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 77 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:88:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 88 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:88:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 88 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In destructor ‘virtual gloo::transport::ibverbs::Pair::~Pair()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 121 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 121 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:124:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 124 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:124:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 124 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 121 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 121 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: warning: ‘throw’ will always call ‘terminate’ [-Wterminate] 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:124:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 124 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:134:7: note: in C++11 destructors default to ‘noexcept’ 134 | throw EnforceNotMet( \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 135 | __FILE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 136 | __LINE__, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 137 | expr, \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 138 | r.get_message_and_free(MakeString(__VA_ARGS__))); \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:124:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 124 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘virtual void gloo::transport::ibverbs::Pair::connect(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:170:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 170 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:170:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 170 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:187:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 187 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:187:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 187 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘void gloo::transport::ibverbs::Pair::sendMemoryRegion(ibv_mr*, int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(mappedSendRegions_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::ibverbs::Pair*)this)->gloo::transport::ibverbs::Pair::mappedSendRegions_.std::map >::count(slot), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(mappedSendRegions_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘virtual std::unique_ptr gloo::transport::ibverbs::Pair::createSendBuffer(int, void*, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:305:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 305 | GLOO_ENFORCE_EQ(sendCompletionHandlers_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::ibverbs::Pair*)this)->gloo::transport::ibverbs::Pair::sendCompletionHandlers_.std::map::count(slot), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:305:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 305 | GLOO_ENFORCE_EQ(sendCompletionHandlers_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘virtual std::unique_ptr gloo::transport::ibverbs::Pair::createRecvBuffer(int, void*, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:314:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 314 | GLOO_ENFORCE_EQ(recvCompletionHandlers_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::ibverbs::Pair*)this)->gloo::transport::ibverbs::Pair::recvCompletionHandlers_.std::map::count(slot), 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:314:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 314 | GLOO_ENFORCE_EQ(recvCompletionHandlers_.count(slot), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘void gloo::transport::ibverbs::Pair::handleCompletionEvent()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:367:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 367 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:367:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 367 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘void gloo::transport::ibverbs::Pair::pollCompletions()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:388:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 388 | GLOO_ENFORCE_GE(nwc, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(nwc, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ~~~~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:388:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 388 | GLOO_ENFORCE_GE(nwc, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:397:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::array::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 397 | if (nwc == 0 || nwc < wc.size()) { | ~~~~^~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘void gloo::transport::ibverbs::Pair::handleCompletion(ibv_wc*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:409:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 409 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(wc->ibv_wc::status, IBV_WC_SUCCESS)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:409:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 409 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:428:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 428 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(wc->ibv_wc::status, IBV_WC_SUCCESS)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:428:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 428 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:453:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 453 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(wc->ibv_wc::status, IBV_WC_SUCCESS)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:453:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 453 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:473:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 473 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(wc->ibv_wc::status, IBV_WC_SUCCESS)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:473:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 473 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:481:5: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 481 | GLOO_ENFORCE_GT(mappedSendRegions_.size(), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:157:33: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Greater(((gloo::transport::ibverbs::Pair*)this)->gloo::transport::ibverbs::Pair::mappedSendRegions_.std::map >::size(), 0)’ 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:481:5: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 481 | GLOO_ENFORCE_GT(mappedSendRegions_.size(), 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:482:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 482 | GLOO_ENFORCE_EQ(mappedSendRegions_.count(slot), 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::ibverbs::Pair*)this)->gloo::transport::ibverbs::Pair::mappedSendRegions_.std::map >::count(((std::map >::key_type)slot)), 1)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:482:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 482 | GLOO_ENFORCE_EQ(mappedSendRegions_.count(slot), 1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc: In member function ‘void gloo::transport::ibverbs::Pair::send(gloo::transport::ibverbs::Buffer*, size_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:505:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 505 | GLOO_ENFORCE_NE(peer, (const struct ibv_mr*)nullptr); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(peer, 0)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:505:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 505 | GLOO_ENFORCE_NE(peer, (const struct ibv_mr*)nullptr); | ^~~~~~~~~~~~~~~ [ 75%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/address.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Equals(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:241:3: required from here 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:121:28: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 121 | BINARY_COMP_HELPER(Equals, ==) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Greater(const T1&, const T2&) [with T1 = long unsigned int; T2 = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/ibverbs/pair.cc:481:5: required from here 157 | GLOO_ENFORCE_THAT_IMPL(Greater((x), (y)), #x " > " #y, __VA_ARGS__) | ~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:123:29: warning: comparison of integer expressions of different signedness: ‘const long unsigned int’ and ‘const int’ [-Wsign-compare] 123 | BINARY_COMP_HELPER(Greater, >) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc:15: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc: In constructor ‘gloo::transport::uv::Address::Address(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc:27:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 27 | GLOO_ENFORCE_EQ(sizeof(impl_), bytes.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(sizeof (((gloo::transport::uv::Address*)this)->gloo::transport::uv::Address::impl_), (& bytes)->std::vector::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc:27:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 27 | GLOO_ENFORCE_EQ(sizeof(impl_), bytes.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc: In member function ‘virtual std::string gloo::transport::uv::Address::str() const’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/address.cc:80:17: warning: comparison of integer expressions of different signedness: ‘const gloo::transport::uv::Address::sequence_type’ {aka ‘const int’} and ‘long unsigned int’ [-Wsign-compare] 80 | if (impl_.seq != SIZE_MAX) { | ^ [ 76%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/device.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc: In function ‘bool gloo::transport::uv::{anonymous}::lookupAddrForIface(gloo::transport::uv::attr*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:64:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 64 | for (auto i = 0; i < addresses.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/context.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/device.h:14, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.h:20, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc: In function ‘void gloo::transport::uv::{anonymous}::lookupAddrForHostname(gloo::transport::uv::attr&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 121 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(rv, -1)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:121:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 121 | GLOO_ENFORCE_NE(rv, -1); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc: In function ‘std::shared_ptr gloo::transport::uv::CreateDevice(attr)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:173:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 173 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(rv, 0)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/device.cc:173:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 173 | GLOO_ENFORCE_EQ(rv, 0); | ^~~~~~~~~~~~~~~ [ 78%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/context.cc.o [ 79%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/libuv.cc.o [ 81%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/pair.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.h:31, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc: In member function ‘virtual void gloo::transport::uv::Pair::connect(const std::vector&)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:64:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 64 | GLOO_ENFORCE_EQ(state_, INITIALIZED); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::transport::uv::Pair*)this)->gloo::transport::uv::Pair::state_, gloo::transport::uv::Pair::INITIALIZED)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:64:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 64 | GLOO_ENFORCE_EQ(state_, INITIALIZED); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc: In member function ‘virtual void gloo::transport::uv::Pair::send(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:465:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 465 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:465:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 465 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc: In member function ‘virtual void gloo::transport::uv::Pair::recv(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:499:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 499 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:499:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 499 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc: In member function ‘bool gloo::transport::uv::Pair::tryRecv(gloo::transport::UnboundBuffer*, uint64_t, size_t, size_t)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:527:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 527 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals(nbytes, (((long unsigned int)tbuf->gloo::transport::UnboundBuffer::size) - offset))’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ~~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:527:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 527 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc: In member function ‘void gloo::transport::uv::Pair::closeWhileHoldingPairLock()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:553:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 553 | GLOO_ENFORCE_NE( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:149:35: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::NotEquals(((gloo::transport::uv::Pair*)this)->gloo::transport::uv::Pair::state_, gloo::transport::uv::Pair::CONNECTING)’ 149 | GLOO_ENFORCE_THAT_IMPL(NotEquals((x), (y)), #x " != " #y, __VA_ARGS__) | ~~~~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/uv/pair.cc:553:7: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 553 | GLOO_ENFORCE_NE( | ^~~~~~~~~~~~~~~ [ 82%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/unbound_buffer.cc.o [ 84%] Linking CXX shared library libgloo.so [ 84%] Built target gloo [ 85%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/gloo_cuda_generated_cuda.cu.o [ 87%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/nccl/gloo_cuda_generated_nccl.cu.o [ 89%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/gloo_cuda_generated_cuda_private.cu.o [ 90%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_halving_doubling.cc.o [ 92%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_bcube.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:66:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 66 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:69:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 69 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:94:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 94 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::run() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:136:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 136 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::setupNodes() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:338:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 338 | for (int step = 0; step < steps_; ++step) { | ~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:94:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 94 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:98:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 98 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:128:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 128 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:139:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 139 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:141:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 141 | if (sendOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:148:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 148 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:150:43: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 150 | if (recvOffsets_[i] + stepChunkSize > count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:216:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 216 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:268:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 268 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:269:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 269 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:273:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 273 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:288:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 288 | if (i != stepsWithinBlock_ - 1) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:321:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 321 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:335:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare] 335 | for (int i = 0; i < numSendsAndReceivesToLargerBlock; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:350:45: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 350 | if (recvOffsets_[stepsWithinBlock_ - 1] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:364:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 364 | if (recvOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:369:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 369 | if (sendOffsets_[i] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initBinaryBlocks() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:48:18: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘const int’ [-Wsign-compare] 48 | if (offset <= this->context_->rank) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:416:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 416 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:419:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 419 | offset = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:422:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 422 | numElements = i == stepsWithinBlock_ - 1 ? recvCounts_[i] + sendCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:424:16: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 424 | if (offset > count_) { | ~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:428:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 428 | if (offset + numElements > count_) { | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:433:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 433 | for (int j = 0; j < devicePtrs_.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:438:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 438 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:441:23: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 441 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:445:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 445 | for (int i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:446:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 446 | if (sendOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:450:25: warning: comparison of integer expressions of different signedness: ‘__gnu_cxx::__alloc_traits, long unsigned int>::value_type’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare] 450 | if (recvOffsets_[0] < count_) { /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = signed char; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = int; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = int; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = long int; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = long int; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = float; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = float; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = double; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = double; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = signed char; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = signed char; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc: In instantiation of ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:374:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 374 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:152:48: required from ‘void gloo::CudaAllreduceBcube::run() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 152 | recvBufs_[recvBufIdx_[srcRank]].range(0, recvCount); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = int; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = int; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long int; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long int; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = float; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = float; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = double; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = double; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:480:14: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare] 480 | if (bytes_ < kOnDeviceThreshold) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:579:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 579 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:584:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 584 | const size_t numElementsInBcast = i == stepsWithinBlock_ - 1 | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:281:44: required from ‘void gloo::CudaAllreduceHalvingDoubling::run() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 281 | auto recvBufAtOffset = recvBuf_.range(bufferOffset, recvCounts_[i]); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:435:31: required from ‘void gloo::CudaAllreduceHalvingDoubling::devicePointerInit() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 435 | devicePtrs_[j].range(offset, numElements)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc: In instantiation of ‘void gloo::CudaAllreduceHalvingDoubling::initReductionsAndBroadcasts(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:242:32: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 242 | initReductionsAndBroadcasts(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:632:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 632 | for (int i = 0; i < stepsWithinBlock_; i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:642:11: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 642 | i == stepsWithinBlock_ - 1 ? sendCounts_[i] + recvCounts_[i] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:11: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:11: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:75:37: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 75 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:484:26: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 484 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:378:26: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 378 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:502:52: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 502 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 503 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:396:52: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 396 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 397 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:376:23: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 376 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:405:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 405 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 406 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:408:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 408 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 506 | template class CudaAllreduceBcube>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:482:23: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 482 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:525:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 525 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:527:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 527 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 649 | template class CudaAllreduceHalvingDoubling>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:383:28: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 383 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = signed char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:508:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:509:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:510:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:511:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:512:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:489:28: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 489 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = float; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:513:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = double; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:514:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:380:38: required from ‘void gloo::CudaAllreduceBcube::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 380 | localReduceOp_ = cudaDeviceReduce( | ~~~~~~~~~~~~~~~~^ 381 | streams_, devicePtrs_, scratch_, fn_, 0, totalNumElems_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:79:7: required from ‘gloo::CudaAllreduceBcube::CudaAllreduceBcube(const std::shared_ptr&, const std::vector&, int, const std::vector&, const gloo::CudaReductionFunction*) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 79 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_bcube.cc:515:1: required from here 505 | template class CudaAllreduceBcube>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = signed char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:651:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:652:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:653:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:654:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:655:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = float; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:656:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = double; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:657:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:487:25: required from ‘void gloo::CudaAllreduceHalvingDoubling::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 487 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:109:7: required from ‘gloo::CudaAllreduceHalvingDoubling::CudaAllreduceHalvingDoubling(const std::shared_ptr&, const std::vector&, int, const std::vector&, bool) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 109 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_halving_doubling.cc:658:1: required from here 648 | template class CudaAllreduceHalvingDoubling>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h: In function ‘gloo::cpu_half2float(gloo::float16)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:339:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 339 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:336:12: note: ‘temp’ declared here 336 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h: In function ‘gloo::cpu_half2float(gloo::float16)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:339:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 339 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:336:12: note: ‘temp’ declared here 336 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ [ 93%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_local.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc: In instantiation of ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:26:37: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 26 | fn_(CudaReductionFunction::sum), | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = signed char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = unsigned char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long unsigned int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = float; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = double; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = gloo::float16; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:40:70: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 40 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 41 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:50:28: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 50 | cudaDeviceBroadcast(streams_, devicePtrs_, devicePtrs_[0], 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:70:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:71:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:72:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:73:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:74:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:75:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:76:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:48:25: required from ‘gloo::CudaAllreduceLocal::CudaAllreduceLocal(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16]’ 48 | cudaDeviceReduce(streams_, devicePtrs_, devicePtrs_[0], fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_local.cc:77:1: required from here 68 | #define INSTANTIATE_TEMPLATE(T) template class CudaAllreduceLocal; | ^~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h: In function ‘gloo::cpu_half2float(gloo::float16)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:339:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 339 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:336:12: note: ‘temp’ declared here 336 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ [ 95%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_ring.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc: In instantiation of ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:30:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 30 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:34:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 34 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:11: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:27:37: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 27 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:224:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 224 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘std::unique_ptr > gloo::cudaHostBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:139:24: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 139 | cudaHostBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:241:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 241 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:154:52: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 154 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 155 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘gloo::CudaLocalHostReduce >::CudaLocalHostReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalHostReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:230:50: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 230 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 231 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:103:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = signed char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = signed char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = signed char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = unsigned char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = unsigned char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = unsigned char; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long unsigned int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long unsigned int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = long unsigned int; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = float; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = float; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = float; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = double; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = double; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = double; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = gloo::float16; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:258:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = gloo::float16; Src = gloo::CudaDevicePointer; Dst = gloo::CudaHostPointer; size_t = long unsigned int]’ 258 | dst_(dst.range(offset, count)) {} | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaHostPointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaHostPointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:227:70: required from ‘std::unique_ptr > gloo::cudaHostReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 227 | return make_unique, Dst>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 228 | streams[0], devicePtrs[0], targetPtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:137:21: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaHostWorkspace; T = gloo::float16; W = gloo::CudaHostWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaHostPointer; typename U::Pointer = gloo::CudaHostPointer]’ 137 | cudaHostReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 179 | template class CudaAllreduceRing>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:63:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 63 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:165:28: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 165 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, 0, count_); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:182:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:183:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:184:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:185:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:186:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:187:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:188:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:64:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 64 | toDeviceElements(streams, devicePtrs, offset, count), fn, root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:163:25: required from ‘void gloo::CudaAllreduceRing::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 163 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, 0, count_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:45:7: required from ‘gloo::CudaAllreduceRing::CudaAllreduceRing(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 45 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring.cc:189:1: required from here 180 | template class CudaAllreduceRing>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = gloo::float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:197:16: required from here 197 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:199:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 199 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostBroadcast >::wait() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:204:16: required from here 204 | virtual void wait() { | ^~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h: In instantiation of ‘void gloo::CudaLocalHostReduce >::runAsync() [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:108:16: required from here 108 | virtual void runAsync() { | ^~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:111:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 111 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_host.h:116:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 116 | for (auto i = 1; i < devicePtrs_.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h: In function ‘gloo::cpu_half2float(gloo::float16)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:339:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 339 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:336:12: note: ‘temp’ declared here 336 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ [ 96%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_ring_chunked.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:56:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 56 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:60:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 60 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:87:25: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int’ [-Wsign-compare] 87 | if (offset + length <= count_) { | ~~~~~~~~~~~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::run() [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:137:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 137 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:139:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 139 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:147:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 147 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:149:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 149 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:157:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 157 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:159:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 159 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:168:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 168 | for (auto round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:171:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:216:29: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 216 | for (int round = 0; round < chunks_; round++) { | ~~~~~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:219:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 219 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:224:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 224 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:238:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 238 | if (round < (chunks_ - 2)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:244:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 244 | if (round < (chunks_ - 4)) { | ~~~~~~^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:266:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 266 | for (auto i = 0; i < chunks_; i++) { | ~~^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:268:23: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 268 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc: In instantiation of ‘void gloo::CudaAllreduceRingChunked::copyChunkAtOffset(int) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:299:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::ChunkContext, std::allocator >::ChunkContext> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 299 | if (chunkOffset < chunkContext_.size()) { | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaHostPointer gloo::CudaHostPointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaHostPointer*)this)->gloo::CudaHostPointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:224:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 224 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:95:23: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 95 | scratch_.range(offset, length), | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:36:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 36 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:14: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:18, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:11: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = signed char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = signed char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = unsigned char]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = unsigned char; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = long unsigned int; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = float; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = double]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = double; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h: In instantiation of ‘void gloo::sum(void*, const void*, const void*, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:28:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 28 | sum(a, a, b, n); | ~~~~~~^~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:346:5: required from ‘const gloo::CudaReductionFunction* gloo::CudaReductionFunction::sum’ 346 | new CudaReductionFunction(SUM, &::gloo::cudaSum, &::gloo::sum); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:53:37: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 53 | fn_(CudaReductionFunction::sum) { | ^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:21:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 21 | for (auto i = 0; i < n; i++) { | ~~^~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In instantiation of ‘int gloo::findCudaDevicePointerClosestToDevice(std::vector >&, std::shared_ptr&) [with T = float16]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:342:52: required from ‘void gloo::CudaAllreduceRingChunked::init(typename std::enable_if >::value, typename U::Pointer>::type*) [with U = gloo::CudaDeviceWorkspace; T = gloo::float16; W = gloo::CudaDeviceWorkspace; typename std::enable_if >::value, typename U::Pointer>::type = gloo::CudaDevicePointer; typename U::Pointer = gloo::CudaDevicePointer]’ 342 | auto index = findCudaDevicePointerClosestToDevice( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 343 | devicePtrs_, this->context_->getDevice()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:83:7: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 83 | init(); | ~~~~^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:68:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:86:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 86 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaDevicePointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:52:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 52 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:58:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 58 | GLOO_ENFORCE_GE(root, 0, "targetPtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 357 | template class CudaAllreduceRingChunked>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::ReduceOp; _Args = {vector, allocator > >, const gloo::CudaReductionFunction*&, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:102:49: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 102 | reduceOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:136:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 136 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, const int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:199:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaHostPointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 199 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 200 | toDeviceElements(streams, devicePtrs, offset, count), root_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaHostPointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:97:28: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 97 | cudaDeviceBroadcast(streams_, devicePtrs_, scratch_, offset, length))); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = signed char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:359:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = unsigned char; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:360:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:361:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:362:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = long unsigned int; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:363:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = float; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:364:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = double; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = double; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:365:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:103:27: required from ‘gloo::CudaLocalNCCLReduce >::CudaLocalNCCLReduce(std::vector&, std::vector >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 103 | toDeviceElements(streams, devicePtrs, offset, count), fn, root_); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLReduce >; _Args = {vector >&, vector, allocator > >&, gloo::CudaHostPointer&, const gloo::CudaReductionFunction*&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:45:50: required from ‘std::unique_ptr > gloo::cudaDeviceReduce(std::vector&, std::vector >&, Dst&, const CudaReductionFunction*, size_t, size_t) [with T = float16; Dst = CudaHostPointer; size_t = long unsigned int]’ 45 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 46 | streams, devicePtrs, targetPtr, fn, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:96:25: required from ‘gloo::CudaAllreduceRingChunked::CudaAllreduceRingChunked(const std::shared_ptr&, const std::vector&, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 96 | cudaDeviceReduce(streams_, devicePtrs_, scratch_, fn_, offset, length), | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_allreduce_ring_chunked.cc:366:1: required from here 356 | template class CudaAllreduceRingChunked>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:12: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h: In function ‘gloo::cpu_half2float(gloo::float16)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:339:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 339 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:336:12: note: ‘temp’ declared here 336 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ [ 98%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_broadcast_one_to_all.cc.o In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/pair.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/context.h:15, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/algorithm.h:13, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.h:11, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:9: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getCurrentGPUID()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:41:3: note: in expansion of macro ‘CUDA_CHECK’ 41 | CUDA_CHECK(cudaGetDevice(&id)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getGPUIDForPointer(const void*)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:47:3: note: in expansion of macro ‘CUDA_CHECK’ 47 | CUDA_CHECK(cudaPointerGetAttributes(&attr, ptr)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In function ‘int gloo::getDeviceCount()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:53:3: note: in expansion of macro ‘CUDA_CHECK’ 53 | CUDA_CHECK(cudaGetDeviceCount(&count)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In destructor ‘gloo::CudaDeviceGuard::~CudaDeviceGuard()’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:102:5: note: in expansion of macro ‘CUDA_CHECK’ 102 | CUDA_CHECK(cudaSetDevice(previous_)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In constructor ‘gloo::CudaDeviceScope::CudaDeviceScope(int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(error, cudaSuccess)’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ~~~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:28:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 28 | GLOO_ENFORCE_EQ( \ | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:112:5: note: in expansion of macro ‘CUDA_CHECK’ 112 | CUDA_CHECK(cudaSetDevice(device)); | ^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h: In member function ‘CUstream_st* gloo::CudaDeviceStreams::operator[](int)’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:153:30: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Less(i, ((gloo::CudaDeviceStreams*)this)->gloo::CudaDeviceStreams::streams_.std::vector::size())’ 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: note: in expansion of macro ‘GLOO_ENFORCE_LT’ 154 | GLOO_ENFORCE_LT(i, streams_.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h: In instantiation of ‘gloo::enforce_detail::EnforceFailMessage gloo::enforce_detail::Less(const T1&, const T2&) [with T1 = int; T2 = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_private.h:154:5: required from here 153 | GLOO_ENFORCE_THAT_IMPL(Less((x), (y)), #x " < " #y, __VA_ARGS__) | ~~~~^~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:125:26: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘const long unsigned int’ [-Wsign-compare] 125 | BINARY_COMP_HELPER(Less, <) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:116:11: note: in definition of macro ‘BINARY_COMP_HELPER’ 116 | if (x op y) { \ | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc: In instantiation of ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaDeviceWorkspace]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 189 | template class CudaBroadcastOneToAll>; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(((gloo::CudaBroadcastOneToAll >*)this)->gloo::CudaBroadcastOneToAll >::rootRank_, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:30:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 30 | GLOO_ENFORCE_GE(rootRank_, 0); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& ptrs)->std::vector >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:35:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 35 | GLOO_ENFORCE_EQ(streams.size(), ptrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:39:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 39 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h: In instantiation of ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals((& streams)->std::vector::size(), (& devicePtrs)->std::vector, std::allocator > >::size())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:60:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 60 | GLOO_ENFORCE_EQ(streams.size(), devicePtrs.size()); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:21, from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:11: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:150:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 150 | for (auto i = 0; i < devicePtrs.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:155:39: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::GreaterEquals(root, 0)’ 155 | GLOO_ENFORCE_THAT_IMPL(GreaterEquals((x), (y)), #x " >= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:156:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 156 | GLOO_ENFORCE_GE(root, 0, "sourcePtr must be one of devicePtrs"); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = signed char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = unsigned char; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = long unsigned int; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = float; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = double; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h: In instantiation of ‘gloo::CudaDevicePointer gloo::CudaDevicePointer::range(size_t, size_t) const [with T = gloo::float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:257:23: required from ‘gloo::CudaLocalMemcpy::CudaLocalMemcpy(gloo::CudaStream&, Src&, Dst&, size_t, size_t) [with T = gloo::float16; Src = gloo::CudaDevicePointer; Dst = gloo::CudaDevicePointer; size_t = long unsigned int]’ 257 | src_(src.range(offset, count)), | ~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalMemcpy, gloo::CudaDevicePointer >; _Args = {gloo::CudaStream&, gloo::CudaDevicePointer&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t, gloo::CudaDevicePointer > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:64:70: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 64 | return make_unique>>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 65 | streams[0], sourcePtr, devicePtrs[0], offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:151:36: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::LessEquals((offset + count), ((const gloo::CudaDevicePointer*)this)->gloo::CudaDevicePointer::count_)’ 151 | GLOO_ENFORCE_THAT_IMPL(LessEquals((x), (y)), #x " <= " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda.h:162:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 162 | GLOO_ENFORCE_LE(offset + count, count_); | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h: In instantiation of ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’: /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:25:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector, std::allocator > >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto i = 0; i < ptrs.size(); i++) { | ~~^~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = signed char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = double]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::BroadcastOp::BroadcastOp(gloo::nccl::NCCLExecution&&, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::nccl::BroadcastOp; _Args = {vector, allocator > >, int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:161:55: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 161 | broadcastOp_ = make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(element.gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), element.gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:198:7: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 198 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = signed char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = signed char; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = signed char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = signed char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:191:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = unsigned char]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = unsigned char; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = unsigned char; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = unsigned char; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:192:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:193:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:194:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = long unsigned int]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = long unsigned int; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = long unsigned int; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:195:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = float]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = float; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = float; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:196:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = double]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = double; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = double; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = double; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:197:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h: In instantiation of ‘gloo::nccl::NCCLElement::NCCLElement(gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&) [with T = gloo::float16]’: /usr/include/c++/14/bits/new_allocator.h:191:4: required from ‘void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement]’ 191 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/alloc_traits.h:575:17: required from ‘static void std::allocator_traits >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = gloo::nccl::NCCLElement; _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; allocator_type = std::allocator >]’ 575 | __a.construct(__p, std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/vector.tcc:117:30: required from ‘std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {gloo::CudaDevicePointer, gloo::CudaStream&, gloo::CudaDevicePointer, gloo::CudaStream&}; _Tp = gloo::nccl::NCCLElement; _Alloc = std::allocator >; reference = gloo::nccl::NCCLElement&]’ 117 | _Alloc_traits::construct(this->_M_impl, this->_M_impl._M_finish, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 118 | std::forward<_Args>(__args)...); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:26:26: required from ‘std::vector > gloo::toDeviceElements(std::vector&, const std::vector >&, size_t, size_t) [with T = float16; size_t = long unsigned int]’ 26 | elements.emplace_back( | ~~~~~~~~~~~~~~~~~~~~~^ 27 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 28 | streams[i], | ~~~~~~~~~~~ 29 | ptrs[i].range(offset, count), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 | streams[i]); | ~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_nccl.h:162:27: required from ‘gloo::CudaLocalNCCLBroadcast >::CudaLocalNCCLBroadcast(std::vector&, std::vector >&, gloo::CudaDevicePointer&, size_t, size_t) [with T = gloo::float16; size_t = long unsigned int]’ 162 | toDeviceElements(streams, devicePtrs, offset, count), root); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:1077:30: required from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = gloo::CudaLocalNCCLBroadcast >; _Args = {vector >&, vector, allocator > >&, gloo::CudaDevicePointer&, long unsigned int&, long unsigned int&}; __detail::__unique_ptr_t<_Tp> = __detail::__unique_ptr_t > >]’ 1077 | { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_collectives_device.h:69:53: required from ‘std::unique_ptr > gloo::cudaDeviceBroadcast(std::vector&, std::vector >&, Src&, size_t, size_t) [with T = float16; Src = CudaDevicePointer; size_t = long unsigned int]’ 69 | return make_unique>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 70 | streams, devicePtrs, sourcePtr, offset, count); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:81:44: required from ‘gloo::CudaBroadcastOneToAll::CudaBroadcastOneToAll(const std::shared_ptr&, const std::vector&, int, int, int, const std::vector&) [with T = gloo::float16; W = gloo::CudaHostWorkspace]’ 81 | localBroadcastOp_ = cudaDeviceBroadcast( | ~~~~~~~~~~~~~~~~~~~^ 82 | streams_, devicePtrs_, devicePtrs_[rootPointerRank], 0, count_); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/cuda_broadcast_one_to_all.cc:198:1: required from here 188 | template class CudaBroadcastOneToAll>; \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getCount(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getCount())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:55:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 55 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_THAT_IMPL’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:32: note: the temporary was destroyed at the end of the full expression ‘gloo::enforce_detail::Equals(((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::src.gloo::CudaDevicePointer::getDeviceID(), ((gloo::nccl::NCCLElement*)this)->gloo::nccl::NCCLElement::dst.gloo::CudaDevicePointer::getDeviceID())’ 147 | GLOO_ENFORCE_THAT_IMPL(Equals((x), (y)), #x " == " #y, __VA_ARGS__) | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:36: note: in definition of macro ‘GLOO_ENFORCE_THAT_IMPL’ 132 | const EnforceFailMessage& r = (condition); \ | ^~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/nccl/nccl.h:59:5: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 59 | GLOO_ENFORCE_EQ( | ^~~~~~~~~~~~~~~ [100%] Linking CXX shared library libgloo_cuda.so [100%] Built target gloo_cuda + popd + RPM_EC=0 ~/build/BUILD/gloo-0.5.0-build/gloo ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.vRmIgW + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + '[' /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT ++ dirname /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT + mkdir -p /builddir/build/BUILD/gloo-0.5.0-build + mkdir /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd gloo + rm -rf /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT ~/build/BUILD/gloo-0.5.0-build/gloo/build ~/build/BUILD/gloo-0.5.0-build/gloo + pushd build + make install DESTDIR=/builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT -- Gloo build as SHARED library -- CUDA detected: 12.6 -- Added CUDA NVCC flags for: compute_52 -- Determining NCCL version from the header file: /usr/include/nccl.h -- NCCL_MAJOR_VERSION: 2 -- Found NCCL (include: /usr/include, library: /lib64/libnccl.so) -- Configuring done (0.1s) -- Generating done (0.0s) -- Build files have been written to: /builddir/build/BUILD/gloo-0.5.0-build/gloo/build [ 84%] Built target gloo [ 85%] Linking CXX shared library libgloo_cuda.so [100%] Built target gloo_cuda Install the project... -- Install configuration: "RelWithDebInfo" -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/cmake/Gloo/GlooConfig.cmake -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/cmake/Gloo/GlooConfigVersion.cmake -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/cmake/Gloo/GlooTargets.cmake -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/cmake/Gloo/GlooTargets-relwithdebinfo.cmake -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo.so.1.0 -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo.so.1 -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo.so -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo_cuda.so.1.0 -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo_cuda.so.1 -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/lib64/libgloo_cuda.so -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/config.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/algorithm.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allgather.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allgather_ring.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allgatherv.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce_bcube.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce_halving_doubling.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce_local.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce_ring.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/allreduce_ring_chunked.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/alltoall.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/alltoallv.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/barrier.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/barrier_all_to_all.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/barrier_all_to_one.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/broadcast.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/broadcast_one_to_all.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/gather.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/math.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/pairwise_exchange.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/reduce.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/reduce_scatter.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/scatter.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/types.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/aligned_allocator.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/common.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/error.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/logging.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/string.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/utils.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/linux.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/common/linux_devices.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/file_store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/hash_store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/prefix_store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/rendezvous/redis_store.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/address.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/device.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/pair.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/unbound_buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/address.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/attr.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/device.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/error.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/helpers.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/listener.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/loop.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/pair.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/socket.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/tcp/unbound_buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/address.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/device.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/memory_region.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/ibverbs/pair.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/address.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/device.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/context.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/libuv.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/pair.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/transport/uv/unbound_buffer.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_bcube.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_halving_doubling.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_halving_doubling_pipelined.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_local.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_ring.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_allreduce_ring_chunked.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_broadcast_one_to_all.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_collectives_device.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_collectives_host.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_collectives_native.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_collectives_nccl.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_private.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/cuda_workspace.h -- Installing: /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/include/gloo/nccl/nccl.h + popd ~/build/BUILD/gloo-0.5.0-build/gloo + /usr/bin/find-debuginfo -j2 --strict-build-id -m -i --build-id-seed 0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 --unique-debug-suffix -0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 --unique-debug-src-base gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/gloo-0.5.0-build/gloo find-debuginfo: starting Extracting debug info from 2 files DWARF-compressing 2 files sepdebugcrcfix: Updated 2 CRC32s, 0 CRC32s did match. Creating .debug symlinks for symlinks to ELF files Copying sources found by 'debugedit -l' to /usr/src/debug/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 find-debuginfo: done + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j2 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-determinism --brp -j2 /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT Scanned 33 directories and 232 files, processed 0 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors Reading /builddir/build/BUILD/gloo-0.5.0-build/SPECPARTS/rpm-debuginfo.specpart Processing files: gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.zSpmQT + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + cd gloo + DOCDIR=/builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo + cp -pr /builddir/build/BUILD/gloo-0.5.0-build/gloo/README.md /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.XJxslx + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + cd gloo + LICENSEDIR=/builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo + cp -pr /builddir/build/BUILD/gloo-0.5.0-build/gloo/LICENSE /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo + RPM_EC=0 ++ jobs -p + exit 0 Provides: gloo = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 gloo(x86-64) = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 libgloo.so.1()(64bit) libgloo_cuda.so.1()(64bit) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: ld-linux-x86-64.so.2()(64bit) ld-linux-x86-64.so.2(GLIBC_2.3)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.2)(64bit) libc.so.6(GLIBC_2.3.3)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.9)(64bit) libc.so.6(GLIBC_ABI_DT_RELR)(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_3.3.1)(64bit) libgloo.so.1()(64bit) libhiredis.so.1.1.0()(64bit) libibverbs.so.1()(64bit) libibverbs.so.1(IBVERBS_1.0)(64bit) libibverbs.so.1(IBVERBS_1.1)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.29)(64bit) libnccl.so.2()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.11)(64bit) libstdc++.so.6(CXXABI_1.3.13)(64bit) libstdc++.so.6(CXXABI_1.3.15)(64bit) libstdc++.so.6(CXXABI_1.3.3)(64bit) libstdc++.so.6(CXXABI_1.3.5)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.14)(64bit) libstdc++.so.6(GLIBCXX_3.4.15)(64bit) libstdc++.so.6(GLIBCXX_3.4.18)(64bit) libstdc++.so.6(GLIBCXX_3.4.19)(64bit) libstdc++.so.6(GLIBCXX_3.4.20)(64bit) libstdc++.so.6(GLIBCXX_3.4.21)(64bit) libstdc++.so.6(GLIBCXX_3.4.22)(64bit) libstdc++.so.6(GLIBCXX_3.4.26)(64bit) libstdc++.so.6(GLIBCXX_3.4.29)(64bit) libstdc++.so.6(GLIBCXX_3.4.30)(64bit) libstdc++.so.6(GLIBCXX_3.4.32)(64bit) libstdc++.so.6(GLIBCXX_3.4.5)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) libuv.so.1()(64bit) rtld(GNU_HASH) Processing files: gloo-devel-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.8Ka2id + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + cd gloo + DOCDIR=/builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo-devel + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo-devel + cp -pr /builddir/build/BUILD/gloo-0.5.0-build/gloo/README.md /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/doc/gloo-devel + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.po7Cdb + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + cd gloo + LICENSEDIR=/builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo-devel + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo-devel + cp -pr /builddir/build/BUILD/gloo-0.5.0-build/gloo/LICENSE /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT/usr/share/licenses/gloo-devel + RPM_EC=0 ++ jobs -p + exit 0 Provides: cmake(Gloo) = 0.5.0 cmake(gloo) = 0.5.0 gloo-devel = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 gloo-devel(x86-64) = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: cmake-filesystem libgloo.so.1()(64bit) libgloo_cuda.so.1()(64bit) Processing files: gloo-debugsource-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 Provides: gloo-debugsource = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 gloo-debugsource(x86-64) = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: gloo-debuginfo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64 Provides: debuginfo(build-id) = 3287ccf593bf622fb23055d401830484df71b0d4 debuginfo(build-id) = cb27ff0e08619eb5d784c8c51e69bd4fac678799 gloo-debuginfo = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 gloo-debuginfo(x86-64) = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 libgloo.so.1.0-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.debug()(64bit) libgloo_cuda.so.1.0-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.debug()(64bit) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: gloo-debugsource(x86-64) = 1:0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/gloo-0.5.0-build/BUILDROOT Wrote: /builddir/build/RPMS/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.rpm Wrote: /builddir/build/RPMS/gloo-debugsource-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.rpm Wrote: /builddir/build/RPMS/gloo-devel-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.rpm Wrote: /builddir/build/RPMS/gloo-debuginfo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.x86_64.rpm Executing(rmbuild): /bin/sh -e /var/tmp/rpm-tmp.NahC8j + umask 022 + cd /builddir/build/BUILD/gloo-0.5.0-build + test -d /builddir/build/BUILD/gloo-0.5.0-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/gloo-0.5.0-build + rm -rf /builddir/build/BUILD/gloo-0.5.0-build + RPM_EC=0 ++ jobs -p + exit 0 Finish: rpmbuild gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm Finish: build phase for gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-41-x86_64-1739580523.198863/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names INFO: Done(/var/lib/copr-rpmbuild/results/gloo-0.5.0-20250211.0.git4ff6edf4.cu12_6.fc41.src.rpm) Config(child) 3 minutes 22 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run Running RPMResults tool Package info: { "packages": [ { "name": "gloo", "epoch": 1, "version": "0.5.0", "release": "20250211.0.git4ff6edf4.cu12_6.fc41", "arch": "src" }, { "name": "gloo-debugsource", "epoch": 1, "version": "0.5.0", "release": "20250211.0.git4ff6edf4.cu12_6.fc41", "arch": "x86_64" }, { "name": "gloo-debuginfo", "epoch": 1, "version": "0.5.0", "release": "20250211.0.git4ff6edf4.cu12_6.fc41", "arch": "x86_64" }, { "name": "gloo-devel", "epoch": 1, "version": "0.5.0", "release": "20250211.0.git4ff6edf4.cu12_6.fc41", "arch": "x86_64" }, { "name": "gloo", "epoch": 1, "version": "0.5.0", "release": "20250211.0.git4ff6edf4.cu12_6.fc41", "arch": "x86_64" } ] } RPMResults finished