Warning: Permanently added '54.158.242.219' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/8324365-fedora-41-aarch64 --chroot fedora-41-aarch64 Version: 1.2 PID: 9366 Logging PID: 9367 Task: {'allow_user_ssh': False, 'appstream': False, 'background': False, 'build_id': 8324365, 'buildroot_pkgs': [], 'chroot': 'fedora-41-aarch64', 'enable_net': True, 'fedora_review': False, 'git_hash': '6de50b6f448a5af7601fdb5eb9eb8110124ae9ad', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/rezso/ML/gloo', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'gloo', 'package_version': '1:0.5.0-20241126.0.gitaccd654d.cu12_6', 'project_dirname': 'ML', 'project_name': 'ML', 'project_owner': 'rezso', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/rezso/ML/fedora-41-aarch64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None}, {'baseurl': 'https://download.copr.fedorainfracloud.org/results/rezso/CUDA/fedora-41-aarch64/', 'id': 'copr_rezso_CUDA', 'name': 'Additional repo copr_rezso_CUDA'}, {'baseurl': 'http://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64', 'id': 'http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64', 'name': 'Additional repo http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64'}, {'baseurl': 'http://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa', 'id': 'http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa', 'name': 'Additional repo http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa'}], 'sandbox': 'rezso/ML--rezso', 'source_json': {}, 'source_type': None, 'ssh_public_keys': None, 'storage': None, 'submitter': 'rezso', 'tags': [], 'task_id': '8324365-fedora-41-aarch64', 'timeout': 172800, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/rezso/ML/gloo /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/rezso/ML/gloo', '/var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo'... Running: git checkout 6de50b6f448a5af7601fdb5eb9eb8110124ae9ad -- cmd: ['git', 'checkout', '6de50b6f448a5af7601fdb5eb9eb8110124ae9ad', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo rc: 0 stdout: stderr: Note: switching to '6de50b6f448a5af7601fdb5eb9eb8110124ae9ad'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 6de50b6 automatic import of gloo Running: dist-git-client sources cmd: ['dist-git-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/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 /usr/bin/tail: /var/lib/copr-rpmbuild/main.log: file truncated Running (timeout=172800): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo/gloo.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1732831459.236129 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 5.9 starting (python version = 3.13.0, NVR = mock-5.9-1.fc41), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo/gloo.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-ba5xyjaq/gloo --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1732831459.236129 -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-ba5xyjaq/gloo/gloo.spec) Config(fedora-41-aarch64) Start: clean chroot Finish: clean chroot Mock Version: 5.9 INFO: Mock Version: 5.9 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-aarch64-bootstrap-1732831459.236129/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 bootstrap image: registry.fedoraproject.org/fedora:41 INFO: Pulling image: registry.fedoraproject.org/fedora:41 INFO: Copy content of container registry.fedoraproject.org/fedora:41 to /var/lib/mock/fedora-41-aarch64-bootstrap-1732831459.236129/root INFO: Checking that registry.fedoraproject.org/fedora:41 image matches host's architecture INFO: mounting registry.fedoraproject.org/fedora:41 with podman image mount INFO: image registry.fedoraproject.org/fedora:41 as /var/lib/containers/storage/overlay/aab80ac7c68f6773c72feeebb1f27a1690b11e93752eddf60f02ebdbebb0f977/merged INFO: umounting image registry.fedoraproject.org/fedora:41 (/var/lib/containers/storage/overlay/aab80ac7c68f6773c72feeebb1f27a1690b11e93752eddf60f02ebdbebb0f977/merged) with podman image umount 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-aarch64-1732831459.236129/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.aarch64 rpm-sequoia-1.7.0-2.fc41.aarch64 dnf5-5.2.7.0-1.fc41.aarch64 dnf5-plugins-5.2.7.0-1.fc41.aarch64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: updates 100% | 13.9 MiB/s | 5.4 MiB | 00m00s fedora 100% | 40.1 MiB/s | 34.1 MiB | 00m01s Copr repository 100% | 3.9 MiB/s | 156.1 KiB | 00m00s Additional repo copr_rezso_CUDA 100% | 1.5 MiB/s | 43.8 KiB | 00m00s Additional repo http_developer_downloa 100% | 28.5 MiB/s | 467.1 KiB | 00m00s Additional repo http_developer_downloa 100% | 28.0 MiB/s | 373.1 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash aarch64 5.2.32-1.fc41 fedora 8.3 MiB bzip2 aarch64 1.0.8-19.fc41 fedora 427.6 KiB coreutils aarch64 9.5-11.fc41 updates 7.9 MiB cpio aarch64 2.15-2.fc41 fedora 1.2 MiB diffutils aarch64 3.10-8.fc41 fedora 2.1 MiB fedora-release-common noarch 41-28 updates 19.7 KiB findutils aarch64 1:4.10.0-4.fc41 fedora 2.1 MiB gawk aarch64 5.3.0-4.fc41 fedora 4.2 MiB glibc-minimal-langpack aarch64 2.40-12.fc41 updates 0.0 B grep aarch64 3.11-9.fc41 fedora 1.1 MiB gzip aarch64 1.13-2.fc41 fedora 488.9 KiB info aarch64 7.1-3.fc41 fedora 613.6 KiB patch aarch64 2.7.6-25.fc41 fedora 390.6 KiB redhat-rpm-config noarch 293-1.fc41 fedora 183.5 KiB rpm-build aarch64 4.20.0-1.fc41 fedora 525.9 KiB sed aarch64 4.9-3.fc41 fedora 1.0 MiB shadow-utils aarch64 2:4.15.1-12.fc41 fedora 4.6 MiB tar aarch64 2:1.35-4.fc41 fedora 3.1 MiB unzip aarch64 6.0-64.fc41 fedora 726.7 KiB util-linux aarch64 2.40.2-4.fc41 fedora 17.5 MiB which aarch64 2.21-42.fc41 fedora 248.2 KiB xz aarch64 1:5.6.2-2.fc41 fedora 1.5 MiB Installing dependencies: add-determinism aarch64 0.3.6-3.fc41 updates 2.0 MiB alternatives aarch64 1.30-1.fc41 fedora 218.3 KiB ansible-srpm-macros noarch 1-16.fc41 fedora 35.7 KiB audit-libs aarch64 4.0.2-1.fc41 fedora 547.4 KiB authselect aarch64 1.5.0-8.fc41 fedora 181.5 KiB authselect-libs aarch64 1.5.0-8.fc41 fedora 867.8 KiB basesystem noarch 11-21.fc41 fedora 0.0 B binutils aarch64 2.43.1-2.fc41 fedora 33.0 MiB build-reproducibility-srpm-macros noarch 0.3.6-3.fc41 updates 735.0 B bzip2-libs aarch64 1.0.8-19.fc41 fedora 200.7 KiB ca-certificates noarch 2024.2.69_v8.0.401-1.0.fc41 fedora 2.4 MiB coreutils-common aarch64 9.5-11.fc41 updates 11.2 MiB cracklib aarch64 2.9.11-6.fc41 fedora 935.0 KiB crypto-policies noarch 20241029-1.git8baf557.fc41 updates 136.9 KiB curl aarch64 8.9.1-2.fc41 fedora 924.3 KiB cyrus-sasl-lib aarch64 2.1.28-27.fc41 fedora 3.1 MiB debugedit aarch64 5.1-1.fc41 updates 243.7 KiB dwz aarch64 0.15-8.fc41 fedora 322.8 KiB ed aarch64 1.20.2-2.fc41 fedora 282.8 KiB efi-srpm-macros noarch 5-13.fc41 updates 40.2 KiB elfutils aarch64 0.192-6.fc41 updates 3.1 MiB elfutils-debuginfod-client aarch64 0.192-6.fc41 updates 144.2 KiB elfutils-default-yama-scope noarch 0.192-6.fc41 updates 1.8 KiB elfutils-libelf aarch64 0.192-6.fc41 updates 1.2 MiB elfutils-libs aarch64 0.192-6.fc41 updates 746.6 KiB fedora-gpg-keys noarch 41-1 fedora 126.4 KiB fedora-release noarch 41-28 updates 0.0 B fedora-release-identity-basic noarch 41-28 updates 682.0 B fedora-repos noarch 41-1 fedora 4.9 KiB file aarch64 5.45-7.fc41 fedora 267.5 KiB file-libs aarch64 5.45-7.fc41 fedora 10.0 MiB filesystem aarch64 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.3.2-1.fc41 fedora 39.0 KiB fpc-srpm-macros noarch 1.3-13.fc41 fedora 144.0 B gdb-minimal aarch64 15.2-3.fc41 updates 12.9 MiB gdbm aarch64 1:1.23-7.fc41 fedora 928.5 KiB gdbm-libs aarch64 1:1.23-7.fc41 fedora 426.0 KiB ghc-srpm-macros noarch 1.9.1-2.fc41 fedora 747.0 B glibc aarch64 2.40-12.fc41 updates 6.2 MiB glibc-common aarch64 2.40-12.fc41 updates 1.3 MiB glibc-gconv-extra aarch64 2.40-12.fc41 updates 18.6 MiB gmp aarch64 1:6.3.0-2.fc41 fedora 722.0 KiB gnat-srpm-macros noarch 6-6.fc41 fedora 1.0 KiB go-srpm-macros noarch 3.6.0-3.fc41 fedora 60.8 KiB jansson aarch64 2.13.1-10.fc41 fedora 220.5 KiB json-c aarch64 0.17-4.fc41 fedora 202.4 KiB kernel-srpm-macros noarch 1.0-24.fc41 fedora 1.9 KiB keyutils-libs aarch64 1.6.3-4.fc41 fedora 226.4 KiB krb5-libs aarch64 1.21.3-3.fc41 updates 2.6 MiB libacl aarch64 2.3.2-2.fc41 fedora 196.1 KiB libarchive aarch64 3.7.4-4.fc41 updates 910.7 KiB libattr aarch64 2.5.2-4.fc41 fedora 196.6 KiB libblkid aarch64 2.40.2-4.fc41 fedora 418.6 KiB libbrotli aarch64 1.1.0-5.fc41 fedora 1.1 MiB libcap aarch64 2.70-4.fc41 fedora 1.4 MiB libcap-ng aarch64 0.8.5-3.fc41 fedora 417.2 KiB libcom_err aarch64 1.47.1-6.fc41 fedora 111.3 KiB libcurl aarch64 8.9.1-2.fc41 fedora 858.2 KiB libeconf aarch64 0.6.2-3.fc41 fedora 206.1 KiB libevent aarch64 2.1.12-14.fc41 fedora 1.5 MiB libfdisk aarch64 2.40.2-4.fc41 fedora 482.9 KiB libffi aarch64 3.4.6-3.fc41 fedora 282.4 KiB libgcc aarch64 14.2.1-3.fc41 fedora 350.2 KiB libgomp aarch64 14.2.1-3.fc41 fedora 567.1 KiB libidn2 aarch64 2.3.7-2.fc41 fedora 457.2 KiB libmount aarch64 2.40.2-4.fc41 fedora 483.9 KiB libnghttp2 aarch64 1.62.1-2.fc41 fedora 262.2 KiB libnsl2 aarch64 2.0.1-2.fc41 fedora 222.0 KiB libpkgconf aarch64 2.3.0-1.fc41 fedora 198.1 KiB libpsl aarch64 0.21.5-4.fc41 fedora 196.6 KiB libpwquality aarch64 1.4.5-11.fc41 fedora 1.1 MiB libselinux aarch64 3.7-5.fc41 fedora 265.1 KiB libsemanage aarch64 3.7-2.fc41 fedora 361.5 KiB libsepol aarch64 3.7-2.fc41 fedora 874.0 KiB libsmartcols aarch64 2.40.2-4.fc41 fedora 288.5 KiB libssh aarch64 0.10.6-8.fc41 fedora 581.3 KiB libssh-config noarch 0.10.6-8.fc41 fedora 277.0 B libstdc++ aarch64 14.2.1-3.fc41 fedora 2.8 MiB libtasn1 aarch64 4.19.0-9.fc41 fedora 283.8 KiB libtirpc aarch64 1.3.6-1.fc41 updates 210.8 KiB libtool-ltdl aarch64 2.4.7-12.fc41 fedora 222.2 KiB libunistring aarch64 1.1-8.fc41 fedora 1.8 MiB libutempter aarch64 1.2.1-15.fc41 fedora 417.8 KiB libuuid aarch64 2.40.2-4.fc41 fedora 197.6 KiB libverto aarch64 0.3.2-9.fc41 fedora 197.5 KiB libxcrypt aarch64 4.4.36-10.fc41 updates 271.6 KiB libxml2 aarch64 2.12.8-2.fc41 fedora 2.1 MiB libzstd aarch64 1.5.6-2.fc41 fedora 796.0 KiB lua-libs aarch64 5.4.6-6.fc41 fedora 393.1 KiB lua-srpm-macros noarch 1-14.fc41 fedora 1.3 KiB lz4-libs aarch64 1.10.0-1.fc41 fedora 261.6 KiB mpfr aarch64 4.2.1-5.fc41 fedora 818.9 KiB ncurses-base noarch 6.5-2.20240629.fc41 fedora 326.3 KiB ncurses-libs aarch64 6.5-2.20240629.fc41 fedora 2.2 MiB ocaml-srpm-macros noarch 10-3.fc41 fedora 1.9 KiB openblas-srpm-macros noarch 2-18.fc41 fedora 112.0 B openldap aarch64 2.6.8-5.fc41 fedora 952.3 KiB openssl-libs aarch64 1:3.2.2-9.fc41 fedora 7.2 MiB p11-kit aarch64 0.25.5-3.fc41 fedora 2.6 MiB p11-kit-trust aarch64 0.25.5-3.fc41 fedora 655.6 KiB package-notes-srpm-macros noarch 0.5-12.fc41 fedora 1.6 KiB pam aarch64 1.6.1-6.fc41 updates 4.2 MiB pam-libs aarch64 1.6.1-6.fc41 updates 223.2 KiB pcre2 aarch64 10.44-1.fc41.1 fedora 905.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 aarch64 2.3.0-1.fc41 fedora 240.6 KiB pkgconf-m4 noarch 2.3.0-1.fc41 fedora 14.4 KiB pkgconf-pkg-config aarch64 2.3.0-1.fc41 fedora 990.0 B popt aarch64 1.19-7.fc41 fedora 272.9 KiB publicsuffix-list-dafsa noarch 20240107-4.fc41 fedora 67.5 KiB pyproject-srpm-macros noarch 1.16.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.0-1.fc41 updates 456.0 B readline aarch64 8.2-10.fc41 fedora 753.3 KiB rpm aarch64 4.20.0-1.fc41 fedora 3.3 MiB rpm-build-libs aarch64 4.20.0-1.fc41 fedora 198.7 KiB rpm-libs aarch64 4.20.0-1.fc41 fedora 734.0 KiB rpm-sequoia aarch64 1.7.0-2.fc41 fedora 2.3 MiB rust-srpm-macros noarch 26.3-3.fc41 fedora 4.8 KiB setup noarch 2.15.0-5.fc41 fedora 720.7 KiB sqlite-libs aarch64 3.46.1-1.fc41 fedora 1.6 MiB systemd-libs aarch64 256.8-1.fc41 updates 2.2 MiB util-linux-core aarch64 2.40.2-4.fc41 fedora 6.2 MiB xxhash-libs aarch64 0.8.2-4.fc41 fedora 84.3 KiB xz-libs aarch64 1:5.6.2-2.fc41 fedora 266.4 KiB zig-srpm-macros noarch 1-3.fc41 fedora 1.1 KiB zip aarch64 3.0-41.fc41 fedora 1.1 MiB zlib-ng-compat aarch64 2.1.7-3.fc41 fedora 261.8 KiB zstd aarch64 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 53 MiB. Need to download 53 MiB. After this operation, 241 MiB extra will be used (install 241 MiB, remove 0 B). [ 1/154] bzip2-0:1.0.8-19.fc41.aarch64 100% | 3.9 MiB/s | 52.4 KiB | 00m00s [ 2/154] cpio-0:2.15-2.fc41.aarch64 100% | 15.8 MiB/s | 291.4 KiB | 00m00s [ 3/154] diffutils-0:3.10-8.fc41.aarch 100% | 49.2 MiB/s | 402.9 KiB | 00m00s [ 4/154] bash-0:5.2.32-1.fc41.aarch64 100% | 71.6 MiB/s | 1.8 MiB | 00m00s [ 5/154] findutils-1:4.10.0-4.fc41.aar 100% | 45.1 MiB/s | 554.1 KiB | 00m00s [ 6/154] grep-0:3.11-9.fc41.aarch64 100% | 29.1 MiB/s | 297.9 KiB | 00m00s [ 7/154] gawk-0:5.3.0-4.fc41.aarch64 100% | 55.7 MiB/s | 1.1 MiB | 00m00s [ 8/154] gzip-0:1.13-2.fc41.aarch64 100% | 13.8 MiB/s | 169.1 KiB | 00m00s [ 9/154] info-0:7.1-3.fc41.aarch64 100% | 17.7 MiB/s | 181.3 KiB | 00m00s [ 10/154] patch-0:2.7.6-25.fc41.aarch64 100% | 12.6 MiB/s | 128.8 KiB | 00m00s [ 11/154] redhat-rpm-config-0:293-1.fc4 100% | 11.4 MiB/s | 82.0 KiB | 00m00s [ 12/154] rpm-build-0:4.20.0-1.fc41.aar 100% | 16.4 MiB/s | 83.8 KiB | 00m00s [ 13/154] sed-0:4.9-3.fc41.aarch64 100% | 102.7 MiB/s | 315.4 KiB | 00m00s [ 14/154] tar-2:1.35-4.fc41.aarch64 100% | 139.1 MiB/s | 854.7 KiB | 00m00s [ 15/154] shadow-utils-2:4.15.1-12.fc41 100% | 164.8 MiB/s | 1.3 MiB | 00m00s [ 16/154] unzip-0:6.0-64.fc41.aarch64 100% | 30.1 MiB/s | 184.8 KiB | 00m00s [ 17/154] which-0:2.21-42.fc41.aarch64 100% | 13.5 MiB/s | 41.5 KiB | 00m00s [ 18/154] util-linux-0:2.40.2-4.fc41.aa 100% | 174.2 MiB/s | 1.2 MiB | 00m00s [ 19/154] xz-1:5.6.2-2.fc41.aarch64 100% | 76.9 MiB/s | 472.8 KiB | 00m00s [ 20/154] fedora-release-common-0:41-28 100% | 5.7 MiB/s | 23.5 KiB | 00m00s [ 21/154] coreutils-0:9.5-11.fc41.aarch 100% | 134.1 MiB/s | 1.1 MiB | 00m00s [ 22/154] glibc-minimal-langpack-0:2.40 100% | 20.8 MiB/s | 106.7 KiB | 00m00s [ 23/154] ncurses-libs-0:6.5-2.20240629 100% | 106.3 MiB/s | 326.5 KiB | 00m00s [ 24/154] filesystem-0:3.18-23.fc41.aar 100% | 181.1 MiB/s | 1.1 MiB | 00m00s [ 25/154] bzip2-libs-0:1.0.8-19.fc41.aa 100% | 10.4 MiB/s | 42.7 KiB | 00m00s [ 26/154] libselinux-0:3.7-5.fc41.aarch 100% | 42.9 MiB/s | 87.9 KiB | 00m00s [ 27/154] gmp-1:6.3.0-2.fc41.aarch64 100% | 87.9 MiB/s | 270.1 KiB | 00m00s [ 28/154] mpfr-0:4.2.1-5.fc41.aarch64 100% | 79.3 MiB/s | 324.8 KiB | 00m00s [ 29/154] readline-0:8.2-10.fc41.aarch6 100% | 51.9 MiB/s | 212.6 KiB | 00m00s [ 30/154] pcre2-0:10.44-1.fc41.1.aarch6 100% | 73.9 MiB/s | 227.0 KiB | 00m00s [ 31/154] ed-0:1.20.2-2.fc41.aarch64 100% | 39.6 MiB/s | 81.2 KiB | 00m00s [ 32/154] libattr-0:2.5.2-4.fc41.aarch6 100% | 8.9 MiB/s | 18.2 KiB | 00m00s [ 33/154] ansible-srpm-macros-0:1-16.fc 100% | 10.1 MiB/s | 20.8 KiB | 00m00s [ 34/154] file-0:5.45-7.fc41.aarch64 100% | 24.1 MiB/s | 49.5 KiB | 00m00s [ 35/154] dwz-0:0.15-8.fc41.aarch64 100% | 67.1 MiB/s | 137.4 KiB | 00m00s [ 36/154] fonts-srpm-macros-1:2.0.5-17. 100% | 26.3 MiB/s | 27.0 KiB | 00m00s [ 37/154] forge-srpm-macros-0:0.3.2-1.f 100% | 9.6 MiB/s | 19.7 KiB | 00m00s [ 38/154] fpc-srpm-macros-0:1.3-13.fc41 100% | 7.8 MiB/s | 8.0 KiB | 00m00s [ 39/154] ghc-srpm-macros-0:1.9.1-2.fc4 100% | 8.8 MiB/s | 9.1 KiB | 00m00s [ 40/154] gnat-srpm-macros-0:6-6.fc41.n 100% | 8.7 MiB/s | 9.0 KiB | 00m00s [ 41/154] go-srpm-macros-0:3.6.0-3.fc41 100% | 13.6 MiB/s | 28.0 KiB | 00m00s [ 42/154] kernel-srpm-macros-0:1.0-24.f 100% | 4.8 MiB/s | 9.9 KiB | 00m00s [ 43/154] lua-srpm-macros-0:1-14.fc41.n 100% | 8.7 MiB/s | 8.9 KiB | 00m00s [ 44/154] ocaml-srpm-macros-0:10-3.fc41 100% | 9.0 MiB/s | 9.2 KiB | 00m00s [ 45/154] openblas-srpm-macros-0:2-18.f 100% | 7.5 MiB/s | 7.7 KiB | 00m00s [ 46/154] package-notes-srpm-macros-0:0 100% | 9.6 MiB/s | 9.8 KiB | 00m00s [ 47/154] perl-srpm-macros-0:1-56.fc41. 100% | 8.3 MiB/s | 8.5 KiB | 00m00s [ 48/154] python-srpm-macros-0:3.13-3.f 100% | 11.6 MiB/s | 23.7 KiB | 00m00s [ 49/154] qt5-srpm-macros-0:5.15.15-1.f 100% | 8.7 MiB/s | 8.9 KiB | 00m00s [ 50/154] rust-srpm-macros-0:26.3-3.fc4 100% | 5.9 MiB/s | 12.1 KiB | 00m00s [ 51/154] zig-srpm-macros-0:1-3.fc41.no 100% | 4.0 MiB/s | 8.1 KiB | 00m00s [ 52/154] rpm-0:4.20.0-1.fc41.aarch64 100% | 133.9 MiB/s | 548.6 KiB | 00m00s [ 53/154] pkgconf-pkg-config-0:2.3.0-1. 100% | 4.9 MiB/s | 10.0 KiB | 00m00s [ 54/154] zip-0:3.0-41.fc41.aarch64 100% | 85.8 MiB/s | 263.7 KiB | 00m00s [ 55/154] popt-0:1.19-7.fc41.aarch64 100% | 32.2 MiB/s | 66.0 KiB | 00m00s [ 56/154] rpm-build-libs-0:4.20.0-1.fc4 100% | 30.9 MiB/s | 95.0 KiB | 00m00s [ 57/154] rpm-libs-0:4.20.0-1.fc41.aarc 100% | 74.1 MiB/s | 303.6 KiB | 00m00s [ 58/154] zstd-0:1.5.6-2.fc41.aarch64 100% | 89.2 MiB/s | 456.8 KiB | 00m00s [ 59/154] libacl-0:2.3.2-2.fc41.aarch64 100% | 8.1 MiB/s | 24.9 KiB | 00m00s [ 60/154] audit-libs-0:4.0.2-1.fc41.aar 100% | 61.8 MiB/s | 126.6 KiB | 00m00s [ 61/154] libeconf-0:0.6.2-3.fc41.aarch 100% | 15.8 MiB/s | 32.3 KiB | 00m00s [ 62/154] binutils-0:2.43.1-2.fc41.aarc 100% | 263.1 MiB/s | 6.8 MiB | 00m00s [ 63/154] libsemanage-0:3.7-2.fc41.aarc 100% | 11.1 MiB/s | 114.1 KiB | 00m00s [ 64/154] setup-0:2.15.0-5.fc41.noarch 100% | 15.1 MiB/s | 154.4 KiB | 00m00s [ 65/154] authselect-libs-0:1.5.0-8.fc4 100% | 70.7 MiB/s | 217.3 KiB | 00m00s [ 66/154] libblkid-0:2.40.2-4.fc41.aarc 100% | 40.4 MiB/s | 124.1 KiB | 00m00s [ 67/154] libcap-ng-0:0.8.5-3.fc41.aarc 100% | 16.0 MiB/s | 32.8 KiB | 00m00s [ 68/154] libfdisk-0:2.40.2-4.fc41.aarc 100% | 76.0 MiB/s | 155.6 KiB | 00m00s [ 69/154] libsmartcols-0:2.40.2-4.fc41. 100% | 40.4 MiB/s | 82.7 KiB | 00m00s [ 70/154] libmount-0:2.40.2-4.fc41.aarc 100% | 50.3 MiB/s | 154.6 KiB | 00m00s [ 71/154] libutempter-0:1.2.1-15.fc41.a 100% | 26.5 MiB/s | 27.1 KiB | 00m00s [ 72/154] libuuid-0:2.40.2-4.fc41.aarch 100% | 14.3 MiB/s | 29.4 KiB | 00m00s [ 73/154] zlib-ng-compat-0:2.1.7-3.fc41 100% | 32.6 MiB/s | 66.8 KiB | 00m00s [ 74/154] util-linux-core-0:2.40.2-4.fc 100% | 103.9 MiB/s | 531.8 KiB | 00m00s [ 75/154] xz-libs-1:5.6.2-2.fc41.aarch6 100% | 36.1 MiB/s | 111.0 KiB | 00m00s [ 76/154] libcap-0:2.70-4.fc41.aarch64 100% | 42.6 MiB/s | 87.2 KiB | 00m00s [ 77/154] fedora-repos-0:41-1.noarch 100% | 4.5 MiB/s | 9.2 KiB | 00m00s [ 78/154] coreutils-common-0:9.5-11.fc4 100% | 192.9 MiB/s | 2.1 MiB | 00m00s [ 79/154] openssl-libs-1:3.2.2-9.fc41.a 100% | 168.2 MiB/s | 2.2 MiB | 00m00s [ 80/154] glibc-common-0:2.40-12.fc41.a 100% | 62.7 MiB/s | 385.1 KiB | 00m00s [ 81/154] glibc-0:2.40-12.fc41.aarch64 100% | 132.7 MiB/s | 1.9 MiB | 00m00s [ 82/154] ncurses-base-0:6.5-2.20240629 100% | 14.4 MiB/s | 88.3 KiB | 00m00s [ 83/154] libsepol-0:3.7-2.fc41.aarch64 100% | 106.3 MiB/s | 326.6 KiB | 00m00s [ 84/154] pcre2-syntax-0:10.44-1.fc41.1 100% | 48.8 MiB/s | 149.9 KiB | 00m00s [ 85/154] curl-0:8.9.1-2.fc41.aarch64 100% | 101.5 MiB/s | 311.9 KiB | 00m00s [ 86/154] file-libs-0:5.45-7.fc41.aarch 100% | 124.0 MiB/s | 761.6 KiB | 00m00s [ 87/154] alternatives-0:1.30-1.fc41.aa 100% | 13.5 MiB/s | 41.5 KiB | 00m00s [ 88/154] jansson-0:2.13.1-10.fc41.aarc 100% | 22.4 MiB/s | 45.9 KiB | 00m00s [ 89/154] libgcc-0:14.2.1-3.fc41.aarch6 100% | 56.8 MiB/s | 116.2 KiB | 00m00s [ 90/154] pkgconf-0:2.3.0-1.fc41.aarch6 100% | 14.7 MiB/s | 45.2 KiB | 00m00s [ 91/154] libstdc++-0:14.2.1-3.fc41.aar 100% | 162.6 MiB/s | 832.5 KiB | 00m00s [ 92/154] pkgconf-m4-0:2.3.0-1.fc41.noa 100% | 4.7 MiB/s | 14.3 KiB | 00m00s [ 93/154] libgomp-0:14.2.1-3.fc41.aarch 100% | 112.1 MiB/s | 344.2 KiB | 00m00s [ 94/154] lua-libs-0:5.4.6-6.fc41.aarch 100% | 63.4 MiB/s | 129.8 KiB | 00m00s [ 95/154] libzstd-0:1.5.6-2.fc41.aarch6 100% | 93.7 MiB/s | 288.0 KiB | 00m00s [ 96/154] rpm-sequoia-0:1.7.0-2.fc41.aa 100% | 166.7 MiB/s | 853.7 KiB | 00m00s [ 97/154] lz4-libs-0:1.10.0-1.fc41.aarc 100% | 17.6 MiB/s | 72.3 KiB | 00m00s [ 98/154] sqlite-libs-0:3.46.1-1.fc41.a 100% | 114.9 MiB/s | 706.0 KiB | 00m00s [ 99/154] fedora-gpg-keys-0:41-1.noarch 100% | 65.3 MiB/s | 133.7 KiB | 00m00s [100/154] ca-certificates-0:2024.2.69_v 100% | 170.2 MiB/s | 871.2 KiB | 00m00s [101/154] basesystem-0:11-21.fc41.noarc 100% | 3.6 MiB/s | 7.4 KiB | 00m00s [102/154] glibc-gconv-extra-0:2.40-12.f 100% | 218.9 MiB/s | 1.8 MiB | 00m00s [103/154] libpkgconf-0:2.3.0-1.fc41.aar 100% | 7.5 MiB/s | 38.4 KiB | 00m00s [104/154] libffi-0:3.4.6-3.fc41.aarch64 100% | 9.4 MiB/s | 38.3 KiB | 00m00s [105/154] p11-kit-0:0.25.5-3.fc41.aarch 100% | 116.9 MiB/s | 478.8 KiB | 00m00s [106/154] libtasn1-0:4.19.0-9.fc41.aarc 100% | 17.8 MiB/s | 73.0 KiB | 00m00s [107/154] p11-kit-trust-0:0.25.5-3.fc41 100% | 32.7 MiB/s | 133.8 KiB | 00m00s [108/154] libxcrypt-0:4.4.36-10.fc41.aa 100% | 60.1 MiB/s | 123.1 KiB | 00m00s [109/154] pam-0:1.6.1-6.fc41.aarch64 100% | 137.0 MiB/s | 561.2 KiB | 00m00s [110/154] systemd-libs-0:256.8-1.fc41.a 100% | 115.7 MiB/s | 710.6 KiB | 00m00s [111/154] pam-libs-0:1.6.1-6.fc41.aarch 100% | 14.0 MiB/s | 57.3 KiB | 00m00s [112/154] authselect-0:1.5.0-8.fc41.aar 100% | 71.1 MiB/s | 145.7 KiB | 00m00s [113/154] gdbm-libs-1:1.23-7.fc41.aarch 100% | 27.5 MiB/s | 56.3 KiB | 00m00s [114/154] gdbm-1:1.23-7.fc41.aarch64 100% | 49.3 MiB/s | 151.6 KiB | 00m00s [115/154] libnsl2-0:2.0.1-2.fc41.aarch6 100% | 14.7 MiB/s | 30.1 KiB | 00m00s [116/154] libpwquality-0:1.4.5-11.fc41. 100% | 58.5 MiB/s | 119.8 KiB | 00m00s [117/154] cracklib-0:2.9.11-6.fc41.aarc 100% | 45.2 MiB/s | 92.6 KiB | 00m00s [118/154] elfutils-libelf-0:0.192-6.fc4 100% | 67.6 MiB/s | 207.7 KiB | 00m00s [119/154] elfutils-libs-0:0.192-6.fc41. 100% | 85.4 MiB/s | 262.4 KiB | 00m00s [120/154] elfutils-debuginfod-client-0: 100% | 15.0 MiB/s | 46.2 KiB | 00m00s [121/154] elfutils-0:0.192-6.fc41.aarch 100% | 106.2 MiB/s | 544.0 KiB | 00m00s [122/154] json-c-0:0.17-4.fc41.aarch64 100% | 14.7 MiB/s | 45.1 KiB | 00m00s [123/154] debugedit-0:5.1-1.fc41.aarch6 100% | 25.7 MiB/s | 79.0 KiB | 00m00s [124/154] build-reproducibility-srpm-ma 100% | 3.5 MiB/s | 10.8 KiB | 00m00s [125/154] libarchive-0:3.7.4-4.fc41.aar 100% | 79.0 MiB/s | 404.3 KiB | 00m00s [126/154] libxml2-0:2.12.8-2.fc41.aarch 100% | 110.3 MiB/s | 677.8 KiB | 00m00s [127/154] efi-srpm-macros-0:5-13.fc41.n 100% | 11.0 MiB/s | 22.5 KiB | 00m00s [128/154] pyproject-srpm-macros-0:1.16. 100% | 13.3 MiB/s | 13.6 KiB | 00m00s [129/154] add-determinism-0:0.3.6-3.fc4 100% | 132.4 MiB/s | 813.7 KiB | 00m00s [130/154] qt6-srpm-macros-0:6.8.0-1.fc4 100% | 4.4 MiB/s | 9.0 KiB | 00m00s [131/154] crypto-policies-0:20241029-1. 100% | 47.6 MiB/s | 97.5 KiB | 00m00s [132/154] libcom_err-0:1.47.1-6.fc41.aa 100% | 13.0 MiB/s | 26.6 KiB | 00m00s [133/154] libtirpc-0:1.3.6-1.fc41.aarch 100% | 46.6 MiB/s | 95.5 KiB | 00m00s [134/154] keyutils-libs-0:1.6.3-4.fc41. 100% | 15.6 MiB/s | 31.9 KiB | 00m00s [135/154] krb5-libs-0:1.21.3-3.fc41.aar 100% | 149.4 MiB/s | 765.1 KiB | 00m00s [136/154] elfutils-default-yama-scope-0 100% | 12.0 MiB/s | 12.3 KiB | 00m00s [137/154] libverto-0:0.3.2-9.fc41.aarch 100% | 5.1 MiB/s | 20.9 KiB | 00m00s [138/154] fedora-release-0:41-28.noarch 100% | 6.2 MiB/s | 12.6 KiB | 00m00s [139/154] xxhash-libs-0:0.8.2-4.fc41.aa 100% | 16.9 MiB/s | 34.7 KiB | 00m00s [140/154] libcurl-0:8.9.1-2.fc41.aarch6 100% | 115.8 MiB/s | 355.8 KiB | 00m00s [141/154] libbrotli-0:1.1.0-5.fc41.aarc 100% | 67.6 MiB/s | 346.2 KiB | 00m00s [142/154] libidn2-0:2.3.7-2.fc41.aarch6 100% | 38.7 MiB/s | 118.9 KiB | 00m00s [143/154] libnghttp2-0:1.62.1-2.fc41.aa 100% | 25.0 MiB/s | 76.9 KiB | 00m00s [144/154] libpsl-0:0.21.5-4.fc41.aarch6 100% | 31.5 MiB/s | 64.4 KiB | 00m00s [145/154] gdb-minimal-0:15.2-3.fc41.aar 100% | 243.8 MiB/s | 4.1 MiB | 00m00s [146/154] libssh-0:0.10.6-8.fc41.aarch6 100% | 34.7 MiB/s | 213.1 KiB | 00m00s [147/154] openldap-0:2.6.8-5.fc41.aarch 100% | 41.0 MiB/s | 251.8 KiB | 00m00s [148/154] publicsuffix-list-dafsa-0:202 100% | 28.5 MiB/s | 58.3 KiB | 00m00s [149/154] libssh-config-0:0.10.6-8.fc41 100% | 4.5 MiB/s | 9.2 KiB | 00m00s [150/154] libunistring-0:1.1-8.fc41.aar 100% | 131.8 MiB/s | 539.8 KiB | 00m00s [151/154] cyrus-sasl-lib-0:2.1.28-27.fc 100% | 152.4 MiB/s | 780.2 KiB | 00m00s [152/154] libevent-0:2.1.12-14.fc41.aar 100% | 49.7 MiB/s | 254.6 KiB | 00m00s [153/154] libtool-ltdl-0:2.4.7-12.fc41. 100% | 8.7 MiB/s | 35.8 KiB | 00m00s [154/154] fedora-release-identity-basic 100% | 13.1 MiB/s | 13.4 KiB | 00m00s -------------------------------------------------------------------------------- [154/154] Total 100% | 72.9 MiB/s | 52.6 MiB | 00m01s Running transaction Importing PGP 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% | 719.0 B/s | 154.0 B | 00m00s [ 2/156] Prepare transaction 100% | 2.6 KiB/s | 154.0 B | 00m00s [ 3/156] Installing libgcc-0:14.2.1-3. 100% | 171.8 MiB/s | 351.9 KiB | 00m00s [ 4/156] Installing fedora-release-ide 100% | 918.0 KiB/s | 940.0 B | 00m00s [ 5/156] Installing fedora-gpg-keys-0: 100% | 28.0 MiB/s | 172.2 KiB | 00m00s [ 6/156] Installing fedora-repos-0:41- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 7/156] Installing fedora-release-com 100% | 23.4 MiB/s | 24.0 KiB | 00m00s [ 8/156] Installing fedora-release-0:4 100% | 0.0 B/s | 124.0 B | 00m00s [ 9/156] Installing setup-0:2.15.0-5.f 100% | 44.3 MiB/s | 726.1 KiB | 00m00s [ 10/156] Installing filesystem-0:3.18- 100% | 2.5 MiB/s | 212.5 KiB | 00m00s [ 11/156] Installing basesystem-0:11-21 100% | 0.0 B/s | 124.0 B | 00m00s [ 12/156] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 13/156] Installing publicsuffix-list- 100% | 66.7 MiB/s | 68.3 KiB | 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% | 49.1 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% | 321.2 MiB/s | 2.2 MiB | 00m00s [ 20/156] Installing glibc-0:2.40-12.fc 100% | 269.7 MiB/s | 6.2 MiB | 00m00s [ 21/156] Installing bash-0:5.2.32-1.fc 100% | 346.4 MiB/s | 8.3 MiB | 00m00s [ 22/156] Installing glibc-common-0:2.4 100% | 188.6 MiB/s | 1.3 MiB | 00m00s [ 23/156] Installing glibc-gconv-extra- 100% | 373.9 MiB/s | 18.7 MiB | 00m00s [ 24/156] Installing zlib-ng-compat-0:2 100% | 256.4 MiB/s | 262.6 KiB | 00m00s [ 25/156] Installing bzip2-libs-0:1.0.8 100% | 197.1 MiB/s | 201.9 KiB | 00m00s [ 26/156] Installing xz-libs-1:5.6.2-2. 100% | 261.2 MiB/s | 267.5 KiB | 00m00s [ 27/156] Installing readline-0:8.2-10. 100% | 245.9 MiB/s | 755.5 KiB | 00m00s [ 28/156] Installing popt-0:1.19-7.fc41 100% | 91.0 MiB/s | 279.5 KiB | 00m00s [ 29/156] Installing libuuid-0:2.40.2-4 100% | 193.9 MiB/s | 198.5 KiB | 00m00s [ 30/156] Installing libblkid-0:2.40.2- 100% | 409.7 MiB/s | 419.6 KiB | 00m00s [ 31/156] Installing gmp-1:6.3.0-2.fc41 100% | 235.8 MiB/s | 724.2 KiB | 00m00s [ 32/156] Installing libattr-0:2.5.2-4. 100% | 192.9 MiB/s | 197.5 KiB | 00m00s [ 33/156] Installing libacl-0:2.3.2-2.f 100% | 192.3 MiB/s | 196.9 KiB | 00m00s [ 34/156] Installing libstdc++-0:14.2.1 100% | 346.7 MiB/s | 2.8 MiB | 00m00s [ 35/156] Installing libzstd-0:1.5.6-2. 100% | 259.5 MiB/s | 797.3 KiB | 00m00s [ 36/156] Installing elfutils-libelf-0: 100% | 297.4 MiB/s | 1.2 MiB | 00m00s [ 37/156] Installing libxcrypt-0:4.4.36 100% | 133.9 MiB/s | 274.3 KiB | 00m00s [ 38/156] Installing libeconf-0:0.6.2-3 100% | 202.9 MiB/s | 207.8 KiB | 00m00s [ 39/156] Installing gdbm-libs-1:1.23-7 100% | 417.7 MiB/s | 427.7 KiB | 00m00s [ 40/156] Installing dwz-0:0.15-8.fc41. 100% | 316.5 MiB/s | 324.1 KiB | 00m00s [ 41/156] Installing mpfr-0:4.2.1-5.fc4 100% | 267.1 MiB/s | 820.5 KiB | 00m00s [ 42/156] Installing gawk-0:5.3.0-4.fc4 100% | 387.6 MiB/s | 4.3 MiB | 00m00s [ 43/156] Installing unzip-0:6.0-64.fc4 100% | 237.7 MiB/s | 730.2 KiB | 00m00s [ 44/156] Installing file-libs-0:5.45-7 100% | 626.5 MiB/s | 10.0 MiB | 00m00s [ 45/156] Installing file-0:5.45-7.fc41 100% | 32.8 MiB/s | 269.0 KiB | 00m00s >>> Running pre-install scriptlet: crypto-policies-0:20241029-1.git8baf557.fc41. >>> Finished pre-install scriptlet: crypto-policies-0:20241029-1.git8baf557.fc41 >>> Scriptlet output: >>> /var/tmp/rpm-tmp.uMB8on: line 2: rm: command not found >>> [ 46/156] Installing crypto-policies-0: 100% | 22.8 MiB/s | 163.3 KiB | 00m00s [ 47/156] Installing pcre2-0:10.44-1.fc 100% | 295.2 MiB/s | 906.9 KiB | 00m00s [ 48/156] Installing grep-0:3.11-9.fc41 100% | 156.7 MiB/s | 1.1 MiB | 00m00s [ 49/156] Installing xz-1:5.6.2-2.fc41. 100% | 185.3 MiB/s | 1.5 MiB | 00m00s [ 50/156] Installing libcap-ng-0:0.8.5- 100% | 409.3 MiB/s | 419.1 KiB | 00m00s [ 51/156] Installing audit-libs-0:4.0.2 100% | 268.3 MiB/s | 549.6 KiB | 00m00s [ 52/156] Installing pam-libs-0:1.6.1-6 100% | 220.1 MiB/s | 225.4 KiB | 00m00s [ 53/156] Installing libcap-0:2.70-4.fc 100% | 344.0 MiB/s | 1.4 MiB | 00m00s [ 54/156] Installing systemd-libs-0:256 100% | 276.0 MiB/s | 2.2 MiB | 00m00s [ 55/156] Installing libsmartcols-0:2.4 100% | 282.7 MiB/s | 289.5 KiB | 00m00s [ 56/156] Installing libsepol-0:3.7-2.f 100% | 284.8 MiB/s | 874.9 KiB | 00m00s [ 57/156] Installing libselinux-0:3.7-5 100% | 260.1 MiB/s | 266.3 KiB | 00m00s [ 58/156] Installing sed-0:4.9-3.fc41.a 100% | 197.2 MiB/s | 1.0 MiB | 00m00s [ 59/156] Installing findutils-1:4.10.0 100% | 263.5 MiB/s | 2.1 MiB | 00m00s [ 60/156] Installing libmount-0:2.40.2- 100% | 236.8 MiB/s | 485.1 KiB | 00m00s [ 61/156] Installing alternatives-0:1.3 100% | 214.7 MiB/s | 219.9 KiB | 00m00s [ 62/156] Installing lua-libs-0:5.4.6-6 100% | 385.0 MiB/s | 394.3 KiB | 00m00s [ 63/156] Installing lz4-libs-0:1.10.0- 100% | 256.5 MiB/s | 262.7 KiB | 00m00s [ 64/156] Installing libffi-0:3.4.6-3.f 100% | 277.2 MiB/s | 283.8 KiB | 00m00s [ 65/156] Installing libtasn1-0:4.19.0- 100% | 139.4 MiB/s | 285.6 KiB | 00m00s [ 66/156] Installing p11-kit-0:0.25.5-3 100% | 220.5 MiB/s | 2.6 MiB | 00m00s [ 67/156] Installing libcom_err-0:1.47. 100% | 109.8 MiB/s | 112.4 KiB | 00m00s [ 68/156] Installing libunistring-0:1.1 100% | 301.5 MiB/s | 1.8 MiB | 00m00s [ 69/156] Installing libidn2-0:2.3.7-2. 100% | 150.8 MiB/s | 463.1 KiB | 00m00s [ 70/156] Installing libpsl-0:0.21.5-4. 100% | 193.1 MiB/s | 197.7 KiB | 00m00s [ 71/156] Installing p11-kit-trust-0:0. 100% | 64.2 MiB/s | 657.4 KiB | 00m00s [ 72/156] Installing zstd-0:1.5.6-2.fc4 100% | 281.8 MiB/s | 1.7 MiB | 00m00s [ 73/156] Installing util-linux-core-0: 100% | 387.6 MiB/s | 6.2 MiB | 00m00s [ 74/156] Installing tar-2:1.35-4.fc41. 100% | 278.8 MiB/s | 3.1 MiB | 00m00s [ 75/156] Installing libsemanage-0:3.7- 100% | 118.3 MiB/s | 363.3 KiB | 00m00s [ 76/156] Installing shadow-utils-2:4.1 100% | 132.2 MiB/s | 4.6 MiB | 00m00s [ 77/156] Installing libutempter-0:1.2. 100% | 136.7 MiB/s | 419.8 KiB | 00m00s [ 78/156] Installing zip-0:3.0-41.fc41. 100% | 281.0 MiB/s | 1.1 MiB | 00m00s [ 79/156] Installing gdbm-1:1.23-7.fc41 100% | 227.9 MiB/s | 933.4 KiB | 00m00s [ 80/156] Installing cyrus-sasl-lib-0:2 100% | 310.7 MiB/s | 3.1 MiB | 00m00s [ 81/156] Installing libfdisk-0:2.40.2- 100% | 236.3 MiB/s | 483.9 KiB | 00m00s [ 82/156] Installing libxml2-0:2.12.8-2 100% | 306.0 MiB/s | 2.1 MiB | 00m00s [ 83/156] Installing bzip2-0:1.0.8-19.f 100% | 211.0 MiB/s | 432.2 KiB | 00m00s [ 84/156] Installing sqlite-libs-0:3.46 100% | 311.7 MiB/s | 1.6 MiB | 00m00s [ 85/156] Installing add-determinism-0: 100% | 290.6 MiB/s | 2.0 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% | 278.5 MiB/s | 285.1 KiB | 00m00s [ 88/156] Installing patch-0:2.7.6-25.f 100% | 191.5 MiB/s | 392.1 KiB | 00m00s [ 89/156] Installing elfutils-default-y 100% | 340.5 KiB/s | 2.0 KiB | 00m00s [ 90/156] Installing elfutils-libs-0:0. 100% | 182.7 MiB/s | 748.5 KiB | 00m00s [ 91/156] Installing cpio-0:2.15-2.fc41 100% | 203.4 MiB/s | 1.2 MiB | 00m00s [ 92/156] Installing diffutils-0:3.10-8 100% | 263.7 MiB/s | 2.1 MiB | 00m00s [ 93/156] Installing jansson-0:2.13.1-1 100% | 216.7 MiB/s | 221.9 KiB | 00m00s [ 94/156] Installing libgomp-0:14.2.1-3 100% | 277.6 MiB/s | 568.5 KiB | 00m00s [ 95/156] Installing libpkgconf-0:2.3.0 100% | 194.6 MiB/s | 199.2 KiB | 00m00s [ 96/156] Installing pkgconf-0:2.3.0-1. 100% | 237.4 MiB/s | 243.1 KiB | 00m00s [ 97/156] Installing pkgconf-pkg-config 100% | 0.0 B/s | 1.8 KiB | 00m00s [ 98/156] Installing json-c-0:0.17-4.fc 100% | 198.9 MiB/s | 203.7 KiB | 00m00s [ 99/156] Installing keyutils-libs-0:1. 100% | 222.5 MiB/s | 227.9 KiB | 00m00s [100/156] Installing libverto-0:0.3.2-9 100% | 194.7 MiB/s | 199.3 KiB | 00m00s [101/156] Installing xxhash-libs-0:0.8. 100% | 83.7 MiB/s | 85.7 KiB | 00m00s [102/156] Installing libbrotli-0:1.1.0- 100% | 285.2 MiB/s | 1.1 MiB | 00m00s [103/156] Installing libnghttp2-0:1.62. 100% | 257.2 MiB/s | 263.3 KiB | 00m00s [104/156] Installing libtool-ltdl-0:2.4 100% | 218.1 MiB/s | 223.4 KiB | 00m00s [105/156] Installing coreutils-common-0 100% | 310.8 MiB/s | 11.2 MiB | 00m00s [106/156] Installing openssl-libs-1:3.2 100% | 343.4 MiB/s | 7.2 MiB | 00m00s [107/156] Installing coreutils-0:9.5-11 100% | 266.2 MiB/s | 8.0 MiB | 00m00s [108/156] Installing ca-certificates-0: 100% | 2.4 MiB/s | 2.4 MiB | 00m01s [109/156] Installing krb5-libs-0:1.21.3 100% | 236.0 MiB/s | 2.6 MiB | 00m00s [110/156] Installing libarchive-0:3.7.4 100% | 222.8 MiB/s | 912.6 KiB | 00m00s [111/156] Installing libtirpc-0:1.3.6-1 100% | 103.8 MiB/s | 212.5 KiB | 00m00s [112/156] Installing gzip-0:1.13-2.fc41 100% | 160.9 MiB/s | 494.4 KiB | 00m00s [113/156] Installing authselect-libs-0: 100% | 123.2 MiB/s | 882.8 KiB | 00m00s [114/156] Installing cracklib-0:2.9.11- 100% | 154.0 MiB/s | 946.3 KiB | 00m00s [115/156] Installing libpwquality-0:1.4 100% | 184.6 MiB/s | 1.1 MiB | 00m00s [116/156] Installing libnsl2-0:2.0.1-2. 100% | 109.0 MiB/s | 223.2 KiB | 00m00s [117/156] Installing pam-0:1.6.1-6.fc41 100% | 214.3 MiB/s | 4.3 MiB | 00m00s [118/156] Installing libssh-0:0.10.6-8. 100% | 284.9 MiB/s | 583.4 KiB | 00m00s [119/156] Installing rpm-sequoia-0:1.7. 100% | 328.2 MiB/s | 2.3 MiB | 00m00s [120/156] Installing rpm-libs-0:4.20.0- 100% | 239.4 MiB/s | 735.5 KiB | 00m00s [121/156] Installing rpm-build-libs-0:4 100% | 194.7 MiB/s | 199.4 KiB | 00m00s [122/156] Installing libevent-0:2.1.12- 100% | 380.8 MiB/s | 1.5 MiB | 00m00s [123/156] Installing openldap-0:2.6.8-5 100% | 233.4 MiB/s | 956.1 KiB | 00m00s [124/156] Installing libcurl-0:8.9.1-2. 100% | 279.7 MiB/s | 859.3 KiB | 00m00s [125/156] Installing elfutils-debuginfo 100% | 71.5 MiB/s | 146.5 KiB | 00m00s [126/156] Installing binutils-0:2.43.1- 100% | 347.3 MiB/s | 33.0 MiB | 00m00s [127/156] Installing elfutils-0:0.192-6 100% | 285.7 MiB/s | 3.1 MiB | 00m00s [128/156] Installing gdb-minimal-0:15.2 100% | 339.9 MiB/s | 12.9 MiB | 00m00s [129/156] Installing debugedit-0:5.1-1. 100% | 120.3 MiB/s | 246.4 KiB | 00m00s [130/156] Installing curl-0:8.9.1-2.fc4 100% | 69.6 MiB/s | 926.7 KiB | 00m00s [131/156] Installing rpm-0:4.20.0-1.fc4 100% | 130.1 MiB/s | 2.7 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% | 0.0 B/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% | 0.0 B/s | 36.2 KiB | 00m00s [146/156] Installing fonts-srpm-macros- 100% | 55.7 MiB/s | 57.0 KiB | 00m00s [147/156] Installing forge-srpm-macros- 100% | 39.4 MiB/s | 40.4 KiB | 00m00s [148/156] Installing go-srpm-macros-0:3 100% | 60.5 MiB/s | 62.0 KiB | 00m00s [149/156] Installing python-srpm-macros 100% | 50.9 MiB/s | 52.2 KiB | 00m00s [150/156] Installing redhat-rpm-config- 100% | 61.9 MiB/s | 190.1 KiB | 00m00s [151/156] Installing rpm-build-0:4.20.0 100% | 174.0 MiB/s | 534.6 KiB | 00m00s [152/156] Installing pyproject-srpm-mac 100% | 2.4 MiB/s | 2.5 KiB | 00m00s [153/156] Installing util-linux-0:2.40. 100% | 365.4 MiB/s | 17.5 MiB | 00m00s [154/156] Installing authselect-0:1.5.0 100% | 60.5 MiB/s | 185.9 KiB | 00m00s [155/156] Installing which-0:2.21-42.fc 100% | 122.2 MiB/s | 250.4 KiB | 00m00s [156/156] Installing info-0:7.1-3.fc41. 100% | 488.9 KiB/s | 614.0 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.aarch64 alternatives-1.30-1.fc41.aarch64 ansible-srpm-macros-1-16.fc41.noarch audit-libs-4.0.2-1.fc41.aarch64 authselect-1.5.0-8.fc41.aarch64 authselect-libs-1.5.0-8.fc41.aarch64 basesystem-11-21.fc41.noarch bash-5.2.32-1.fc41.aarch64 binutils-2.43.1-2.fc41.aarch64 build-reproducibility-srpm-macros-0.3.6-3.fc41.noarch bzip2-1.0.8-19.fc41.aarch64 bzip2-libs-1.0.8-19.fc41.aarch64 ca-certificates-2024.2.69_v8.0.401-1.0.fc41.noarch coreutils-9.5-11.fc41.aarch64 coreutils-common-9.5-11.fc41.aarch64 cpio-2.15-2.fc41.aarch64 cracklib-2.9.11-6.fc41.aarch64 crypto-policies-20241029-1.git8baf557.fc41.noarch curl-8.9.1-2.fc41.aarch64 cyrus-sasl-lib-2.1.28-27.fc41.aarch64 debugedit-5.1-1.fc41.aarch64 diffutils-3.10-8.fc41.aarch64 dwz-0.15-8.fc41.aarch64 ed-1.20.2-2.fc41.aarch64 efi-srpm-macros-5-13.fc41.noarch elfutils-0.192-6.fc41.aarch64 elfutils-debuginfod-client-0.192-6.fc41.aarch64 elfutils-default-yama-scope-0.192-6.fc41.noarch elfutils-libelf-0.192-6.fc41.aarch64 elfutils-libs-0.192-6.fc41.aarch64 fedora-gpg-keys-41-1.noarch fedora-release-41-28.noarch fedora-release-common-41-28.noarch fedora-release-identity-basic-41-28.noarch fedora-repos-41-1.noarch file-5.45-7.fc41.aarch64 file-libs-5.45-7.fc41.aarch64 filesystem-3.18-23.fc41.aarch64 findutils-4.10.0-4.fc41.aarch64 fonts-srpm-macros-2.0.5-17.fc41.noarch forge-srpm-macros-0.3.2-1.fc41.noarch fpc-srpm-macros-1.3-13.fc41.noarch gawk-5.3.0-4.fc41.aarch64 gdb-minimal-15.2-3.fc41.aarch64 gdbm-1.23-7.fc41.aarch64 gdbm-libs-1.23-7.fc41.aarch64 ghc-srpm-macros-1.9.1-2.fc41.noarch glibc-2.40-12.fc41.aarch64 glibc-common-2.40-12.fc41.aarch64 glibc-gconv-extra-2.40-12.fc41.aarch64 glibc-minimal-langpack-2.40-12.fc41.aarch64 gmp-6.3.0-2.fc41.aarch64 gnat-srpm-macros-6-6.fc41.noarch go-srpm-macros-3.6.0-3.fc41.noarch gpg-pubkey-e99d6ad1-64d2612c grep-3.11-9.fc41.aarch64 gzip-1.13-2.fc41.aarch64 info-7.1-3.fc41.aarch64 jansson-2.13.1-10.fc41.aarch64 json-c-0.17-4.fc41.aarch64 kernel-srpm-macros-1.0-24.fc41.noarch keyutils-libs-1.6.3-4.fc41.aarch64 krb5-libs-1.21.3-3.fc41.aarch64 libacl-2.3.2-2.fc41.aarch64 libarchive-3.7.4-4.fc41.aarch64 libattr-2.5.2-4.fc41.aarch64 libblkid-2.40.2-4.fc41.aarch64 libbrotli-1.1.0-5.fc41.aarch64 libcap-2.70-4.fc41.aarch64 libcap-ng-0.8.5-3.fc41.aarch64 libcom_err-1.47.1-6.fc41.aarch64 libcurl-8.9.1-2.fc41.aarch64 libeconf-0.6.2-3.fc41.aarch64 libevent-2.1.12-14.fc41.aarch64 libfdisk-2.40.2-4.fc41.aarch64 libffi-3.4.6-3.fc41.aarch64 libgcc-14.2.1-3.fc41.aarch64 libgomp-14.2.1-3.fc41.aarch64 libidn2-2.3.7-2.fc41.aarch64 libmount-2.40.2-4.fc41.aarch64 libnghttp2-1.62.1-2.fc41.aarch64 libnsl2-2.0.1-2.fc41.aarch64 libpkgconf-2.3.0-1.fc41.aarch64 libpsl-0.21.5-4.fc41.aarch64 libpwquality-1.4.5-11.fc41.aarch64 libselinux-3.7-5.fc41.aarch64 libsemanage-3.7-2.fc41.aarch64 libsepol-3.7-2.fc41.aarch64 libsmartcols-2.40.2-4.fc41.aarch64 libssh-0.10.6-8.fc41.aarch64 libssh-config-0.10.6-8.fc41.noarch libstdc++-14.2.1-3.fc41.aarch64 libtasn1-4.19.0-9.fc41.aarch64 libtirpc-1.3.6-1.fc41.aarch64 libtool-ltdl-2.4.7-12.fc41.aarch64 libunistring-1.1-8.fc41.aarch64 libutempter-1.2.1-15.fc41.aarch64 libuuid-2.40.2-4.fc41.aarch64 libverto-0.3.2-9.fc41.aarch64 libxcrypt-4.4.36-10.fc41.aarch64 libxml2-2.12.8-2.fc41.aarch64 libzstd-1.5.6-2.fc41.aarch64 lua-libs-5.4.6-6.fc41.aarch64 lua-srpm-macros-1-14.fc41.noarch lz4-libs-1.10.0-1.fc41.aarch64 mpfr-4.2.1-5.fc41.aarch64 ncurses-base-6.5-2.20240629.fc41.noarch ncurses-libs-6.5-2.20240629.fc41.aarch64 ocaml-srpm-macros-10-3.fc41.noarch openblas-srpm-macros-2-18.fc41.noarch openldap-2.6.8-5.fc41.aarch64 openssl-libs-3.2.2-9.fc41.aarch64 p11-kit-0.25.5-3.fc41.aarch64 p11-kit-trust-0.25.5-3.fc41.aarch64 package-notes-srpm-macros-0.5-12.fc41.noarch pam-1.6.1-6.fc41.aarch64 pam-libs-1.6.1-6.fc41.aarch64 patch-2.7.6-25.fc41.aarch64 pcre2-10.44-1.fc41.1.aarch64 pcre2-syntax-10.44-1.fc41.1.noarch perl-srpm-macros-1-56.fc41.noarch pkgconf-2.3.0-1.fc41.aarch64 pkgconf-m4-2.3.0-1.fc41.noarch pkgconf-pkg-config-2.3.0-1.fc41.aarch64 popt-1.19-7.fc41.aarch64 publicsuffix-list-dafsa-20240107-4.fc41.noarch pyproject-srpm-macros-1.16.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.0-1.fc41.noarch readline-8.2-10.fc41.aarch64 redhat-rpm-config-293-1.fc41.noarch rpm-4.20.0-1.fc41.aarch64 rpm-build-4.20.0-1.fc41.aarch64 rpm-build-libs-4.20.0-1.fc41.aarch64 rpm-libs-4.20.0-1.fc41.aarch64 rpm-sequoia-1.7.0-2.fc41.aarch64 rust-srpm-macros-26.3-3.fc41.noarch sed-4.9-3.fc41.aarch64 setup-2.15.0-5.fc41.noarch shadow-utils-4.15.1-12.fc41.aarch64 sqlite-libs-3.46.1-1.fc41.aarch64 systemd-libs-256.8-1.fc41.aarch64 tar-1.35-4.fc41.aarch64 unzip-6.0-64.fc41.aarch64 util-linux-2.40.2-4.fc41.aarch64 util-linux-core-2.40.2-4.fc41.aarch64 which-2.21-42.fc41.aarch64 xxhash-libs-0.8.2-4.fc41.aarch64 xz-5.6.2-2.fc41.aarch64 xz-libs-5.6.2-2.fc41.aarch64 zig-srpm-macros-1-3.fc41.noarch zip-3.0-41.fc41.aarch64 zlib-ng-compat-2.1.7-3.fc41.aarch64 zstd-1.5.6-2.fc41.aarch64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: aarch64 Building for target aarch64 setting SOURCE_DATE_EPOCH=1600992000 Wrote: /builddir/build/SRPMS/gloo-0.5.0-20241126.0.gitaccd654d.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-aarch64-1732831459.236129/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-ba5xyjaq/gloo/gloo.spec) Config(child) 0 minutes 18 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-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm) Config(fedora-41-aarch64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-41-aarch64-bootstrap-1732831459.236129/root. INFO: reusing tmpfs at /var/lib/mock/fedora-41-aarch64-bootstrap-1732831459.236129/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-aarch64-1732831459.236129/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.aarch64 rpm-sequoia-1.7.0-2.fc41.aarch64 dnf5-5.2.7.0-1.fc41.aarch64 dnf5-plugins-5.2.7.0-1.fc41.aarch64 Finish: chroot init Start: build phase for gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Start: build setup for gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Building target platforms: aarch64 Building for target aarch64 setting SOURCE_DATE_EPOCH=1600992000 Wrote: /builddir/build/SRPMS/gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Updating and loading repositories: updates 100% | 49.6 KiB/s | 14.0 KiB | 00m00s fedora 100% | 158.8 KiB/s | 15.4 KiB | 00m00s Copr repository 100% | 109.2 KiB/s | 1.5 KiB | 00m00s Additional repo copr_rezso_CUDA 100% | 101.5 KiB/s | 1.5 KiB | 00m00s Additional repo http_developer_downloa 100% | 870.6 KiB/s | 3.5 KiB | 00m00s Additional repo http_developer_downloa 100% | 870.4 KiB/s | 3.5 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: cmake aarch64 3.30.5-1.fc41 updates 28.4 MiB cuda-cudart-devel-12-6 aarch64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 6.6 MiB cuda-gcc-12-c++ aarch64 12.3.1-1.fc39 copr_base 57.2 MiB cuda-nvcc-12-6 aarch64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 181.1 MiB cuda-nvml-devel-12-6 aarch64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 1.5 MiB gcc-c++ aarch64 14.2.1-3.fc41 fedora 35.0 MiB git aarch64 2.47.1-1.fc41 updates 85.2 KiB hiredis-devel aarch64 1.2.0-3.fc41 fedora 177.4 KiB libnccl aarch64 2.23.4-1+cuda12.6 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 244.1 MiB libnccl-devel aarch64 2.23.4-1+cuda12.6 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 46.9 KiB libuv-devel aarch64 1:1.49.2-1.fc41 updates 191.1 KiB rdma-core-devel aarch64 51.0-5.fc41 updates 606.3 KiB Installing dependencies: annobin-docs noarch 12.69-1.fc41 fedora 97.7 KiB annobin-plugin-gcc aarch64 12.69-1.fc41 fedora 1.1 MiB cmake-data noarch 3.30.5-1.fc41 updates 8.2 MiB cmake-filesystem aarch64 3.30.5-1.fc41 updates 0.0 B cmake-rpm-macros noarch 3.30.5-1.fc41 updates 7.5 KiB cpp aarch64 14.2.1-3.fc41 fedora 31.8 MiB cuda-cccl-12-6 aarch64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 11.6 MiB cuda-crt-12-6 aarch64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 854.8 KiB cuda-cudart-12-6 aarch64 12.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 744.8 KiB cuda-gcc-12 aarch64 12.3.1-1.fc39 copr_base 100.5 MiB cuda-nvvm-12-6 aarch64 12.6.85-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa 51.3 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.6.77-1 http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 44.0 B cuda-toolkit-config-common noarch 12.6.77-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 aarch64 2.6.4-1.fc41 updates 349.0 KiB gcc aarch64 14.2.1-3.fc41 fedora 93.8 MiB gcc-plugin-annobin aarch64 14.2.1-3.fc41 fedora 197.1 KiB git-core aarch64 2.47.1-1.fc41 updates 22.4 MiB git-core-doc noarch 2.47.1-1.fc41 updates 17.2 MiB glibc-devel aarch64 2.40-12.fc41 updates 2.2 MiB groff-base aarch64 1.23.0-7.fc41 fedora 5.2 MiB hiredis aarch64 1.2.0-3.fc41 fedora 394.1 KiB infiniband-diags aarch64 51.0-5.fc41 updates 1.6 MiB isl aarch64 0.16.1-21.fc41 fedora 3.4 MiB jsoncpp aarch64 1.9.5-8.fc41 fedora 335.7 KiB kernel-headers aarch64 6.11.3-300.fc41 fedora 6.3 MiB less aarch64 661-2.fc41 fedora 869.2 KiB libasan aarch64 14.2.1-3.fc41 fedora 1.6 MiB libatomic aarch64 14.2.1-3.fc41 fedora 196.9 KiB libb2 aarch64 0.98.1-12.fc41 fedora 202.2 KiB libcbor aarch64 0.11.0-2.fc41 fedora 202.0 KiB libedit aarch64 3.1-53.20240808cvs.fc41 fedora 344.2 KiB libfido2 aarch64 1.15.0-2.fc41 fedora 342.4 KiB libibumad aarch64 51.0-5.fc41 updates 68.0 KiB libibverbs aarch64 51.0-5.fc41 updates 1.6 MiB libmpc aarch64 1.3.1-6.fc41 fedora 280.8 KiB libnl3 aarch64 3.11.0-1.fc41 updates 1.3 MiB librdmacm aarch64 51.0-5.fc41 updates 206.3 KiB libstdc++-devel aarch64 14.2.1-3.fc41 fedora 15.1 MiB libubsan aarch64 14.2.1-3.fc41 fedora 539.2 KiB libuv aarch64 1:1.49.2-1.fc41 updates 600.8 KiB libuv-static aarch64 1:1.49.2-1.fc41 updates 427.6 KiB libxcrypt-devel aarch64 4.4.36-10.fc41 updates 30.5 KiB make aarch64 1:4.4.1-8.fc41 fedora 1.8 MiB mpdecimal aarch64 2.5.1-16.fc41 fedora 328.9 KiB ncurses aarch64 6.5-2.20240629.fc41 fedora 1.7 MiB openssh aarch64 9.8p1-3.fc41.2 updates 1.8 MiB openssh-clients aarch64 9.8p1-3.fc41.2 updates 2.7 MiB perl-AutoLoader noarch 5.74-512.fc41 updates 20.5 KiB perl-B aarch64 1.89-512.fc41 updates 542.0 KiB perl-Carp noarch 1.54-511.fc41 fedora 46.6 KiB perl-Class-Struct noarch 0.68-512.fc41 updates 25.4 KiB perl-Data-Dumper aarch64 2.189-512.fc41 fedora 263.8 KiB perl-Digest noarch 1.20-511.fc41 fedora 35.3 KiB perl-Digest-MD5 aarch64 2.59-5.fc41 fedora 231.9 KiB perl-DynaLoader aarch64 1.56-512.fc41 updates 32.1 KiB perl-Encode aarch64 4:3.21-511.fc41 fedora 5.9 MiB perl-Errno aarch64 1.38-512.fc41 updates 8.4 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 aarch64 1.18-512.fc41 updates 93.1 KiB perl-File-Basename noarch 2.86-512.fc41 updates 14.0 KiB perl-File-Find noarch 1.44-512.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-512.fc41 updates 12.5 KiB perl-FileHandle noarch 2.05-512.fc41 updates 9.3 KiB perl-Getopt-Long noarch 1:2.58-2.fc41 fedora 144.5 KiB perl-Getopt-Std noarch 1.14-512.fc41 updates 11.2 KiB perl-Git noarch 2.47.1-1.fc41 updates 64.0 KiB perl-HTTP-Tiny noarch 0.090-1.fc41 updates 154.4 KiB perl-IO aarch64 1.55-512.fc41 updates 191.1 KiB perl-IO-Socket-IP noarch 0.42-512.fc41 fedora 98.7 KiB perl-IO-Socket-SSL noarch 2.089-1.fc41 fedora 703.3 KiB perl-IPC-Open3 noarch 1.22-512.fc41 updates 22.5 KiB perl-MIME-Base32 noarch 1.303-21.fc41 fedora 30.7 KiB perl-MIME-Base64 aarch64 3.16-511.fc41 fedora 222.2 KiB perl-Net-SSLeay aarch64 1.94-7.fc41 fedora 1.4 MiB perl-POSIX aarch64 2.20-512.fc41 updates 263.2 KiB perl-PathTools aarch64 3.91-511.fc41 fedora 352.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 aarch64 5:1.68-1.fc41 updates 152.9 KiB perl-SelectSaver noarch 1.02-512.fc41 updates 2.2 KiB perl-Socket aarch64 4:2.038-511.fc41 fedora 272.1 KiB perl-Storable aarch64 1:3.32-511.fc41 fedora 372.5 KiB perl-Symbol noarch 1.09-512.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 aarch64 2.38-23.fc41 fedora 236.2 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-512.fc41 updates 12.5 KiB perl-constant noarch 1.33-512.fc41 fedora 26.2 KiB perl-if noarch 0.61.000-512.fc41 updates 5.8 KiB perl-interpreter aarch64 4:5.40.0-512.fc41 updates 174.3 KiB perl-lib aarch64 0.65-512.fc41 updates 8.5 KiB perl-libnet noarch 3.15-512.fc41 fedora 289.4 KiB perl-libs aarch64 4:5.40.0-512.fc41 updates 9.9 MiB perl-locale noarch 1.12-512.fc41 updates 6.5 KiB perl-mro aarch64 1.29-512.fc41 updates 81.7 KiB perl-overload noarch 1.37-512.fc41 updates 71.5 KiB perl-overloading noarch 0.02-512.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-512.fc41 updates 3.9 KiB python-pip-wheel noarch 24.2-1.fc41 fedora 1.2 MiB python3 aarch64 3.13.0-1.fc41 fedora 83.8 KiB python3-libs aarch64 3.13.0-1.fc41 fedora 42.2 MiB rhash aarch64 1.4.4-2.fc41 fedora 586.0 KiB tzdata noarch 2024a-9.fc41 fedora 1.7 MiB vim-filesystem noarch 2:9.1.866-1.fc41 updates 40.0 B Transaction Summary: Installing: 129 packages Total size of inbound packages is 355 MiB. Need to download 355 MiB. After this operation, 1 GiB extra will be used (install 1 GiB, remove 0 B). [ 1/129] hiredis-devel-0:1.2.0-3.fc41. 100% | 2.8 MiB/s | 53.8 KiB | 00m00s [ 2/129] cuda-cudart-devel-12-6-0:12.6 100% | 88.9 MiB/s | 2.0 MiB | 00m00s [ 3/129] cmake-0:3.30.5-1.fc41.aarch64 100% | 128.6 MiB/s | 7.8 MiB | 00m00s [ 4/129] cuda-nvml-devel-12-6-0:12.6.7 100% | 28.2 MiB/s | 230.9 KiB | 00m00s [ 5/129] gcc-c++-0:14.2.1-3.fc41.aarch 100% | 146.2 MiB/s | 12.9 MiB | 00m00s [ 6/129] git-0:2.47.1-1.fc41.aarch64 100% | 3.0 MiB/s | 51.6 KiB | 00m00s [ 7/129] libnccl-devel-0:2.23.4-1+cuda 100% | 3.1 MiB/s | 16.0 KiB | 00m00s [ 8/129] libuv-devel-1:1.49.2-1.fc41.a 100% | 10.0 MiB/s | 40.9 KiB | 00m00s [ 9/129] rdma-core-devel-0:51.0-5.fc41 100% | 34.5 MiB/s | 424.2 KiB | 00m00s [ 10/129] cuda-nvcc-12-6-0:12.6.85-1.aa 100% | 253.2 MiB/s | 62.0 MiB | 00m00s [ 11/129] gcc-0:14.2.1-3.fc41.aarch64 100% | 154.2 MiB/s | 33.8 MiB | 00m00s [ 12/129] libmpc-0:1.3.1-6.fc41.aarch64 100% | 1.7 MiB/s | 72.7 KiB | 00m00s [ 13/129] libstdc++-devel-0:14.2.1-3.fc 100% | 228.5 MiB/s | 2.7 MiB | 00m00s [ 14/129] hiredis-0:1.2.0-3.fc41.aarch6 100% | 4.0 MiB/s | 49.0 KiB | 00m00s [ 15/129] cmake-data-0:3.30.5-1.fc41.no 100% | 260.1 MiB/s | 2.3 MiB | 00m00s [ 16/129] cmake-filesystem-0:3.30.5-1.f 100% | 1.9 MiB/s | 17.4 KiB | 00m00s [ 17/129] make-1:4.4.1-8.fc41.aarch64 100% | 190.0 MiB/s | 583.7 KiB | 00m00s [ 18/129] jsoncpp-0:1.9.5-8.fc41.aarch6 100% | 22.3 MiB/s | 91.2 KiB | 00m00s [ 19/129] rhash-0:1.4.4-2.fc41.aarch64 100% | 63.5 MiB/s | 195.0 KiB | 00m00s [ 20/129] cuda-cudart-12-6-0:12.6.77-1. 100% | 57.7 MiB/s | 236.2 KiB | 00m00s [ 21/129] cuda-crt-12-6-0:12.6.85-1.aar 100% | 21.4 MiB/s | 109.6 KiB | 00m00s [ 22/129] git-core-0:2.47.1-1.fc41.aarc 100% | 233.9 MiB/s | 4.9 MiB | 00m00s [ 23/129] git-core-doc-0:2.47.1-1.fc41. 100% | 118.8 MiB/s | 3.0 MiB | 00m00s [ 24/129] perl-Git-0:2.47.1-1.fc41.noar 100% | 18.8 MiB/s | 38.4 KiB | 00m00s [ 25/129] perl-Getopt-Long-1:2.58-2.fc4 100% | 31.2 MiB/s | 63.9 KiB | 00m00s [ 26/129] perl-PathTools-0:3.91-511.fc4 100% | 42.7 MiB/s | 87.5 KiB | 00m00s [ 27/129] perl-TermReadKey-0:2.38-23.fc 100% | 17.5 MiB/s | 35.8 KiB | 00m00s [ 28/129] cuda-nvvm-12-6-0:12.6.85-1.aa 100% | 270.9 MiB/s | 22.8 MiB | 00m00s [ 29/129] libuv-1:1.49.2-1.fc41.aarch64 100% | 10.6 MiB/s | 260.5 KiB | 00m00s [ 30/129] libuv-static-1:1.49.2-1.fc41. 100% | 35.6 MiB/s | 109.3 KiB | 00m00s [ 31/129] infiniband-diags-0:51.0-5.fc4 100% | 81.4 MiB/s | 333.3 KiB | 00m00s [ 32/129] libibumad-0:51.0-5.fc41.aarch 100% | 13.2 MiB/s | 26.9 KiB | 00m00s [ 33/129] libibverbs-0:51.0-5.fc41.aarc 100% | 141.3 MiB/s | 434.2 KiB | 00m00s [ 34/129] librdmacm-0:51.0-5.fc41.aarch 100% | 23.8 MiB/s | 73.0 KiB | 00m00s [ 35/129] libasan-0:14.2.1-3.fc41.aarch 100% | 34.6 MiB/s | 495.8 KiB | 00m00s [ 36/129] libnccl-0:2.23.4-1+cuda12.6.a 100% | 237.0 MiB/s | 117.1 MiB | 00m00s [ 37/129] libatomic-0:14.2.1-3.fc41.aar 100% | 378.6 KiB/s | 43.9 KiB | 00m00s [ 38/129] libubsan-0:14.2.1-3.fc41.aarc 100% | 23.6 MiB/s | 217.7 KiB | 00m00s [ 39/129] cpp-0:14.2.1-3.fc41.aarch64 100% | 74.9 MiB/s | 10.7 MiB | 00m00s [ 40/129] emacs-filesystem-1:30.0-3.fc4 100% | 649.2 KiB/s | 7.1 KiB | 00m00s [ 41/129] less-0:661-2.fc41.aarch64 100% | 16.8 MiB/s | 189.8 KiB | 00m00s [ 42/129] perl-Error-1:0.17029-16.fc41. 100% | 39.6 MiB/s | 40.6 KiB | 00m00s [ 43/129] perl-Exporter-0:5.78-511.fc41 100% | 15.1 MiB/s | 30.9 KiB | 00m00s [ 44/129] perl-constant-0:1.33-512.fc41 100% | 11.2 MiB/s | 23.0 KiB | 00m00s [ 45/129] perl-Pod-Usage-4:2.03-511.fc4 100% | 19.5 MiB/s | 40.0 KiB | 00m00s [ 46/129] perl-Text-ParseWords-0:3.31-5 100% | 16.2 MiB/s | 16.6 KiB | 00m00s [ 47/129] perl-Carp-0:1.54-511.fc41.noa 100% | 28.2 MiB/s | 28.9 KiB | 00m00s [ 48/129] perl-Pod-Perldoc-0:3.28.01-51 100% | 84.1 MiB/s | 86.1 KiB | 00m00s [ 49/129] perl-podlators-1:6.0.2-2.fc41 100% | 62.9 MiB/s | 128.9 KiB | 00m00s [ 50/129] groff-base-0:1.23.0-7.fc41.aa 100% | 268.8 MiB/s | 1.1 MiB | 00m00s [ 51/129] perl-Encode-4:3.21-511.fc41.a 100% | 173.5 MiB/s | 1.0 MiB | 00m00s [ 52/129] perl-File-Temp-1:0.231.100-51 100% | 9.6 MiB/s | 59.1 KiB | 00m00s [ 53/129] perl-Pod-Simple-1:3.45-511.fc 100% | 71.3 MiB/s | 219.0 KiB | 00m00s [ 54/129] perl-parent-1:0.242-1.fc41.no 100% | 14.6 MiB/s | 15.0 KiB | 00m00s [ 55/129] perl-Term-ANSIColor-0:5.01-51 100% | 46.6 MiB/s | 47.7 KiB | 00m00s [ 56/129] perl-Term-Cap-0:1.18-511.fc41 100% | 21.6 MiB/s | 22.1 KiB | 00m00s [ 57/129] perl-MIME-Base64-0:3.16-511.f 100% | 29.5 MiB/s | 30.2 KiB | 00m00s [ 58/129] perl-Storable-1:3.32-511.fc41 100% | 95.1 MiB/s | 97.4 KiB | 00m00s [ 59/129] perl-File-Path-0:2.18-511.fc4 100% | 34.4 MiB/s | 35.3 KiB | 00m00s [ 60/129] perl-Pod-Escapes-1:1.07-511.f 100% | 19.3 MiB/s | 19.8 KiB | 00m00s [ 61/129] perl-Text-Tabs+Wrap-0:2024.00 100% | 21.3 MiB/s | 21.9 KiB | 00m00s [ 62/129] ncurses-0:6.5-2.20240629.fc41 100% | 206.3 MiB/s | 422.6 KiB | 00m00s [ 63/129] isl-0:0.16.1-21.fc41.aarch64 100% | 136.3 MiB/s | 837.7 KiB | 00m00s [ 64/129] cuda-cccl-12-6-0:12.6.77-1.aa 100% | 203.1 MiB/s | 1.6 MiB | 00m00s [ 65/129] cuda-toolkit-12-6-config-comm 100% | 2.5 MiB/s | 7.7 KiB | 00m00s [ 66/129] cuda-toolkit-12-config-common 100% | 2.6 MiB/s | 7.9 KiB | 00m00s [ 67/129] cuda-toolkit-config-common-0: 100% | 2.6 MiB/s | 7.9 KiB | 00m00s [ 68/129] perl-File-Basename-0:2.86-512 100% | 16.7 MiB/s | 17.1 KiB | 00m00s [ 69/129] perl-POSIX-0:2.20-512.fc41.aa 100% | 47.4 MiB/s | 97.0 KiB | 00m00s [ 70/129] perl-interpreter-4:5.40.0-512 100% | 70.6 MiB/s | 72.3 KiB | 00m00s [ 71/129] perl-libs-4:5.40.0-512.fc41.a 100% | 163.4 MiB/s | 2.3 MiB | 00m00s [ 72/129] perl-Errno-0:1.38-512.fc41.aa 100% | 14.5 MiB/s | 14.9 KiB | 00m00s [ 73/129] perl-DynaLoader-0:1.56-512.fc 100% | 12.7 MiB/s | 26.0 KiB | 00m00s [ 74/129] perl-vars-0:1.05-512.fc41.noa 100% | 12.7 MiB/s | 13.0 KiB | 00m00s [ 75/129] perl-Fcntl-0:1.18-512.fc41.aa 100% | 29.1 MiB/s | 29.8 KiB | 00m00s [ 76/129] perl-IO-0:1.55-512.fc41.aarch 100% | 80.0 MiB/s | 81.9 KiB | 00m00s [ 77/129] perl-Socket-4:2.038-511.fc41. 100% | 54.2 MiB/s | 55.5 KiB | 00m00s [ 78/129] perl-Symbol-0:1.09-512.fc41.n 100% | 13.8 MiB/s | 14.2 KiB | 00m00s [ 79/129] perl-if-0:0.61.000-512.fc41.n 100% | 6.8 MiB/s | 14.0 KiB | 00m00s [ 80/129] perl-overload-0:1.37-512.fc41 100% | 22.2 MiB/s | 45.5 KiB | 00m00s [ 81/129] perl-HTTP-Tiny-0:0.090-1.fc41 100% | 55.1 MiB/s | 56.5 KiB | 00m00s [ 82/129] perl-IO-Socket-SSL-0:2.089-1. 100% | 75.3 MiB/s | 231.2 KiB | 00m00s [ 83/129] perl-Net-SSLeay-0:1.94-7.fc41 100% | 122.2 MiB/s | 375.4 KiB | 00m00s [ 84/129] perl-Time-Local-2:1.350-511.f 100% | 33.7 MiB/s | 34.5 KiB | 00m00s [ 85/129] cuda-gcc-12-c++-0:12.3.1-1.fc 100% | 145.9 MiB/s | 13.6 MiB | 00m00s [ 86/129] perl-IO-Socket-IP-0:0.42-512. 100% | 2.9 MiB/s | 41.8 KiB | 00m00s [ 87/129] perl-URI-0:5.30-1.fc41.noarch 100% | 68.7 MiB/s | 140.8 KiB | 00m00s [ 88/129] perl-Data-Dumper-0:2.189-512. 100% | 26.9 MiB/s | 55.1 KiB | 00m00s [ 89/129] perl-MIME-Base32-0:1.303-21.f 100% | 20.0 MiB/s | 20.5 KiB | 00m00s [ 90/129] perl-libnet-0:3.15-512.fc41.n 100% | 62.7 MiB/s | 128.5 KiB | 00m00s [ 91/129] perl-Digest-MD5-0:2.59-5.fc41 100% | 35.2 MiB/s | 36.1 KiB | 00m00s [ 92/129] perl-Digest-0:1.20-511.fc41.n 100% | 12.2 MiB/s | 24.9 KiB | 00m00s [ 93/129] perl-IPC-Open3-0:1.22-512.fc4 100% | 10.6 MiB/s | 21.8 KiB | 00m00s [ 94/129] perl-Scalar-List-Utils-5:1.68 100% | 35.7 MiB/s | 73.1 KiB | 00m00s [ 95/129] perl-AutoLoader-0:5.74-512.fc 100% | 10.3 MiB/s | 21.2 KiB | 00m00s [ 96/129] perl-base-0:2.27-512.fc41.noa 100% | 7.9 MiB/s | 16.2 KiB | 00m00s [ 97/129] perl-Getopt-Std-0:1.14-512.fc 100% | 7.6 MiB/s | 15.6 KiB | 00m00s [ 98/129] perl-B-0:1.89-512.fc41.aarch6 100% | 86.4 MiB/s | 176.9 KiB | 00m00s [ 99/129] glibc-devel-0:2.40-12.fc41.aa 100% | 151.7 MiB/s | 621.4 KiB | 00m00s [100/129] kernel-headers-0:6.11.3-300.f 100% | 227.5 MiB/s | 1.6 MiB | 00m00s [101/129] perl-mro-0:1.29-512.fc41.aarc 100% | 5.7 MiB/s | 29.4 KiB | 00m00s [102/129] perl-overloading-0:0.02-512.f 100% | 12.6 MiB/s | 12.9 KiB | 00m00s [103/129] perl-locale-0:1.12-512.fc41.n 100% | 6.6 MiB/s | 13.6 KiB | 00m00s [104/129] perl-File-stat-0:1.14-512.fc4 100% | 16.6 MiB/s | 17.0 KiB | 00m00s [105/129] perl-SelectSaver-0:1.02-512.f 100% | 11.4 MiB/s | 11.7 KiB | 00m00s [106/129] perl-Class-Struct-0:0.68-512. 100% | 21.5 MiB/s | 22.0 KiB | 00m00s [107/129] libnl3-0:3.11.0-1.fc41.aarch6 100% | 113.8 MiB/s | 349.5 KiB | 00m00s [108/129] libxcrypt-devel-0:4.4.36-10.f 100% | 14.1 MiB/s | 28.9 KiB | 00m00s [109/129] expat-0:2.6.4-1.fc41.aarch64 100% | 54.5 MiB/s | 111.5 KiB | 00m00s [110/129] openssh-clients-0:9.8p1-3.fc4 100% | 179.5 MiB/s | 735.2 KiB | 00m00s [111/129] openssh-0:9.8p1-3.fc41.2.aarc 100% | 100.5 MiB/s | 411.8 KiB | 00m00s [112/129] libedit-0:3.1-53.20240808cvs. 100% | 51.6 MiB/s | 105.7 KiB | 00m00s [113/129] libfido2-0:1.15.0-2.fc41.aarc 100% | 94.7 MiB/s | 97.0 KiB | 00m00s [114/129] libcbor-0:0.11.0-2.fc41.aarch 100% | 32.0 MiB/s | 32.8 KiB | 00m00s [115/129] cuda-gcc-12-0:12.3.1-1.fc39.a 100% | 181.4 MiB/s | 28.7 MiB | 00m00s [116/129] perl-lib-0:0.65-512.fc41.aarc 100% | 550.6 KiB/s | 14.9 KiB | 00m00s [117/129] perl-File-Find-0:1.44-512.fc4 100% | 902.6 KiB/s | 25.3 KiB | 00m00s [118/129] perl-FileHandle-0:2.05-512.fc 100% | 7.5 MiB/s | 15.5 KiB | 00m00s [119/129] annobin-plugin-gcc-0:12.69-1. 100% | 237.1 MiB/s | 971.3 KiB | 00m00s [120/129] vim-filesystem-2:9.1.866-1.fc 100% | 3.2 MiB/s | 16.4 KiB | 00m00s [121/129] gcc-plugin-annobin-0:14.2.1-3 100% | 13.5 MiB/s | 55.1 KiB | 00m00s [122/129] annobin-docs-0:12.69-1.fc41.n 100% | 44.8 MiB/s | 91.8 KiB | 00m00s [123/129] python3-0:3.13.0-1.fc41.aarch 100% | 27.3 MiB/s | 27.9 KiB | 00m00s [124/129] cmake-rpm-macros-0:3.30.5-1.f 100% | 5.5 MiB/s | 16.8 KiB | 00m00s [125/129] libb2-0:0.98.1-12.fc41.aarch6 100% | 4.1 MiB/s | 24.9 KiB | 00m00s [126/129] mpdecimal-0:2.5.1-16.fc41.aar 100% | 10.9 MiB/s | 89.1 KiB | 00m00s [127/129] tzdata-0:2024a-9.fc41.noarch 100% | 99.7 MiB/s | 714.7 KiB | 00m00s [128/129] python-pip-wheel-0:24.2-1.fc4 100% | 92.4 MiB/s | 1.2 MiB | 00m00s [129/129] python3-libs-0:3.13.0-1.fc41. 100% | 280.0 MiB/s | 9.0 MiB | 00m00s -------------------------------------------------------------------------------- [129/129] Total 100% | 312.1 MiB/s | 355.2 MiB | 00m01s Running transaction [ 1/131] Verify package files 100% | 88.0 B/s | 129.0 B | 00m01s [ 2/131] Prepare transaction 100% | 1.1 KiB/s | 129.0 B | 00m00s [ 3/131] Installing libmpc-0:1.3.1-6.f 100% | 137.8 MiB/s | 282.3 KiB | 00m00s [ 4/131] Installing expat-0:2.6.4-1.fc 100% | 171.4 MiB/s | 351.1 KiB | 00m00s [ 5/131] Installing cmake-filesystem-0 100% | 3.6 MiB/s | 7.3 KiB | 00m00s [ 6/131] Installing libnl3-0:3.11.0-1. 100% | 258.1 MiB/s | 1.3 MiB | 00m00s [ 7/131] Installing libibverbs-0:51.0- 100% | 237.1 MiB/s | 1.7 MiB | 00m00s [ 8/131] Installing libibumad-0:51.0-5 100% | 67.2 MiB/s | 68.8 KiB | 00m00s [ 9/131] Installing libuv-1:1.49.2-1.f 100% | 196.5 MiB/s | 603.6 KiB | 00m00s [ 10/131] Installing make-1:4.4.1-8.fc4 100% | 264.4 MiB/s | 1.9 MiB | 00m00s [ 11/131] Installing libuv-static-1:1.4 100% | 417.9 MiB/s | 428.0 KiB | 00m00s [ 12/131] Installing libuv-devel-1:1.49 100% | 189.4 MiB/s | 194.0 KiB | 00m00s [ 13/131] Installing librdmacm-0:51.0-5 100% | 101.6 MiB/s | 208.1 KiB | 00m00s [ 14/131] Installing cpp-0:14.2.1-3.fc4 100% | 302.8 MiB/s | 31.8 MiB | 00m00s [ 15/131] Installing cuda-gcc-12-0:12.3 100% | 338.5 MiB/s | 100.5 MiB | 00m00s [ 16/131] Installing tzdata-0:2024a-9.f 100% | 42.2 MiB/s | 1.9 MiB | 00m00s [ 17/131] Installing python-pip-wheel-0 100% | 620.8 MiB/s | 1.2 MiB | 00m00s [ 18/131] Installing mpdecimal-0:2.5.1- 100% | 322.3 MiB/s | 330.0 KiB | 00m00s [ 19/131] Installing libb2-0:0.98.1-12. 100% | 33.1 MiB/s | 203.3 KiB | 00m00s [ 20/131] Installing python3-libs-0:3.1 100% | 261.3 MiB/s | 42.6 MiB | 00m00s [ 21/131] Installing python3-0:3.13.0-1 100% | 83.5 MiB/s | 85.5 KiB | 00m00s [ 22/131] Installing cmake-rpm-macros-0 100% | 7.9 MiB/s | 8.1 KiB | 00m00s [ 23/131] Installing annobin-docs-0:12. 100% | 96.5 MiB/s | 98.8 KiB | 00m00s [ 24/131] Installing vim-filesystem-2:9 100% | 2.3 MiB/s | 4.7 KiB | 00m00s [ 25/131] Installing libcbor-0:0.11.0-2 100% | 198.6 MiB/s | 203.4 KiB | 00m00s [ 26/131] Installing libfido2-0:1.15.0- 100% | 167.9 MiB/s | 343.9 KiB | 00m00s [ 27/131] Installing libedit-0:3.1-53.2 100% | 168.9 MiB/s | 345.8 KiB | 00m00s [ 28/131] Installing openssh-0:9.8p1-3. 100% | 296.4 MiB/s | 1.8 MiB | 00m00s [ 29/131] Installing openssh-clients-0: 100% | 158.5 MiB/s | 2.7 MiB | 00m00s [ 30/131] Installing kernel-headers-0:6 100% | 139.8 MiB/s | 6.4 MiB | 00m00s [ 31/131] Installing libxcrypt-devel-0: 100% | 10.7 MiB/s | 32.9 KiB | 00m00s [ 32/131] Installing glibc-devel-0:2.40 100% | 120.2 MiB/s | 2.3 MiB | 00m00s [ 33/131] Installing cuda-toolkit-confi 100% | 0.0 B/s | 312.0 B | 00m00s [ 34/131] Installing cuda-toolkit-12-co 100% | 0.0 B/s | 316.0 B | 00m00s [ 35/131] Installing cuda-toolkit-12-6- 100% | 0.0 B/s | 124.0 B | 00m00s [ 36/131] Installing cuda-cudart-12-6-0 100% | 38.4 MiB/s | 746.2 KiB | 00m00s [ 37/131] Installing cuda-cccl-12-6-0:1 100% | 163.0 MiB/s | 11.9 MiB | 00m00s [ 38/131] Installing isl-0:0.16.1-21.fc 100% | 313.3 MiB/s | 3.4 MiB | 00m00s [ 39/131] Installing ncurses-0:6.5-2.20 100% | 129.9 MiB/s | 1.7 MiB | 00m00s [ 40/131] Installing groff-base-0:1.23. 100% | 179.3 MiB/s | 5.2 MiB | 00m00s [ 41/131] Installing perl-Digest-0:1.20 100% | 36.2 MiB/s | 37.1 KiB | 00m00s [ 42/131] Installing perl-Digest-MD5-0: 100% | 114.1 MiB/s | 233.8 KiB | 00m00s [ 43/131] Installing perl-B-0:1.89-512. 100% | 177.5 MiB/s | 545.4 KiB | 00m00s [ 44/131] Installing perl-FileHandle-0: 100% | 0.0 B/s | 9.8 KiB | 00m00s [ 45/131] Installing perl-MIME-Base32-0 100% | 31.4 MiB/s | 32.2 KiB | 00m00s [ 46/131] Installing perl-Data-Dumper-0 100% | 259.4 MiB/s | 265.7 KiB | 00m00s [ 47/131] Installing perl-libnet-0:3.15 100% | 143.9 MiB/s | 294.7 KiB | 00m00s [ 48/131] Installing perl-AutoLoader-0: 100% | 0.0 B/s | 20.9 KiB | 00m00s [ 49/131] Installing perl-IO-Socket-IP- 100% | 98.1 MiB/s | 100.5 KiB | 00m00s [ 50/131] Installing perl-URI-0:5.30-1. 100% | 65.8 MiB/s | 269.5 KiB | 00m00s [ 51/131] Installing perl-Text-Tabs+Wra 100% | 23.3 MiB/s | 23.9 KiB | 00m00s [ 52/131] Installing perl-Pod-Escapes-1 100% | 25.3 MiB/s | 25.9 KiB | 00m00s [ 53/131] Installing perl-if-0:0.61.000 100% | 0.0 B/s | 6.2 KiB | 00m00s [ 54/131] Installing perl-Time-Local-2: 100% | 68.9 MiB/s | 70.6 KiB | 00m00s [ 55/131] Installing perl-File-Path-0:2 100% | 63.0 MiB/s | 64.5 KiB | 00m00s [ 56/131] Installing perl-Net-SSLeay-0: 100% | 179.1 MiB/s | 1.4 MiB | 00m00s [ 57/131] Installing perl-locale-0:1.12 100% | 0.0 B/s | 6.9 KiB | 00m00s [ 58/131] Installing perl-IO-Socket-SSL 100% | 230.3 MiB/s | 707.4 KiB | 00m00s [ 59/131] Installing perl-Term-ANSIColo 100% | 96.9 MiB/s | 99.2 KiB | 00m00s [ 60/131] Installing perl-Term-Cap-0:1. 100% | 29.9 MiB/s | 30.6 KiB | 00m00s [ 61/131] Installing perl-POSIX-0:2.20- 100% | 258.3 MiB/s | 264.5 KiB | 00m00s [ 62/131] Installing perl-File-Temp-1:0 100% | 160.2 MiB/s | 164.1 KiB | 00m00s [ 63/131] Installing perl-IPC-Open3-0:1 100% | 0.0 B/s | 23.3 KiB | 00m00s [ 64/131] Installing perl-Class-Struct- 100% | 0.0 B/s | 25.9 KiB | 00m00s [ 65/131] Installing perl-HTTP-Tiny-0:0 100% | 152.8 MiB/s | 156.4 KiB | 00m00s [ 66/131] Installing perl-Pod-Simple-1: 100% | 185.7 MiB/s | 570.5 KiB | 00m00s [ 67/131] Installing perl-Socket-4:2.03 100% | 267.7 MiB/s | 274.1 KiB | 00m00s [ 68/131] Installing perl-Symbol-0:1.09 100% | 0.0 B/s | 7.2 KiB | 00m00s [ 69/131] Installing perl-SelectSaver-0 100% | 0.0 B/s | 2.6 KiB | 00m00s [ 70/131] Installing perl-File-stat-0:1 100% | 0.0 B/s | 13.1 KiB | 00m00s [ 71/131] Installing perl-Pod-Perldoc-0 100% | 82.6 MiB/s | 169.3 KiB | 00m00s [ 72/131] Installing perl-podlators-1:6 100% | 157.0 MiB/s | 321.4 KiB | 00m00s [ 73/131] Installing perl-Text-ParseWor 100% | 14.2 MiB/s | 14.6 KiB | 00m00s [ 74/131] Installing perl-Fcntl-0:1.18- 100% | 92.0 MiB/s | 94.2 KiB | 00m00s [ 75/131] Installing perl-base-0:2.27-5 100% | 0.0 B/s | 12.9 KiB | 00m00s [ 76/131] Installing perl-mro-0:1.29-51 100% | 80.7 MiB/s | 82.6 KiB | 00m00s [ 77/131] Installing perl-overloading-0 100% | 0.0 B/s | 5.5 KiB | 00m00s [ 78/131] Installing perl-IO-0:1.55-512 100% | 95.4 MiB/s | 195.4 KiB | 00m00s [ 79/131] Installing perl-Pod-Usage-4:2 100% | 84.3 MiB/s | 86.3 KiB | 00m00s [ 80/131] Installing perl-constant-0:1. 100% | 26.7 MiB/s | 27.4 KiB | 00m00s [ 81/131] Installing perl-parent-1:0.24 100% | 0.0 B/s | 10.7 KiB | 00m00s [ 82/131] Installing perl-MIME-Base64-0 100% | 219.2 MiB/s | 224.4 KiB | 00m00s [ 83/131] Installing perl-File-Basename 100% | 0.0 B/s | 14.6 KiB | 00m00s [ 84/131] Installing perl-Errno-0:1.38- 100% | 0.0 B/s | 8.8 KiB | 00m00s [ 85/131] Installing perl-vars-0:1.05-5 100% | 0.0 B/s | 4.3 KiB | 00m00s [ 86/131] Installing perl-Scalar-List-U 100% | 76.5 MiB/s | 156.7 KiB | 00m00s [ 87/131] Installing perl-Getopt-Std-0: 100% | 0.0 B/s | 11.7 KiB | 00m00s [ 88/131] Installing perl-overload-0:1. 100% | 0.0 B/s | 71.9 KiB | 00m00s [ 89/131] Installing perl-Storable-1:3. 100% | 365.3 MiB/s | 374.1 KiB | 00m00s [ 90/131] Installing perl-Getopt-Long-1 100% | 143.8 MiB/s | 147.2 KiB | 00m00s [ 91/131] Installing perl-Exporter-0:5. 100% | 54.3 MiB/s | 55.6 KiB | 00m00s [ 92/131] Installing perl-Carp-0:1.54-5 100% | 46.6 MiB/s | 47.7 KiB | 00m00s [ 93/131] Installing perl-DynaLoader-0: 100% | 0.0 B/s | 32.5 KiB | 00m00s [ 94/131] Installing perl-PathTools-0:3 100% | 174.1 MiB/s | 356.6 KiB | 00m00s [ 95/131] Installing perl-Encode-4:3.21 100% | 310.9 MiB/s | 5.9 MiB | 00m00s [ 96/131] Installing perl-libs-4:5.40.0 100% | 208.8 MiB/s | 10.0 MiB | 00m00s [ 97/131] Installing perl-interpreter-4 100% | 171.8 MiB/s | 176.0 KiB | 00m00s [ 98/131] Installing infiniband-diags-0 100% | 235.3 MiB/s | 1.6 MiB | 00m00s [ 99/131] Installing perl-TermReadKey-0 100% | 116.4 MiB/s | 238.4 KiB | 00m00s [100/131] Installing perl-Error-1:0.170 100% | 78.6 MiB/s | 80.5 KiB | 00m00s [101/131] Installing perl-File-Find-0:1 100% | 41.5 MiB/s | 42.5 KiB | 00m00s [102/131] Installing perl-lib-0:0.65-51 100% | 8.7 MiB/s | 8.9 KiB | 00m00s [103/131] Installing less-0:661-2.fc41. 100% | 213.0 MiB/s | 872.6 KiB | 00m00s [104/131] Installing git-core-0:2.47.1- 100% | 334.5 MiB/s | 22.4 MiB | 00m00s [105/131] Installing git-core-doc-0:2.4 100% | 260.1 MiB/s | 17.4 MiB | 00m00s [106/131] Installing perl-Git-0:2.47.1- 100% | 63.5 MiB/s | 65.0 KiB | 00m00s [107/131] Installing git-0:2.47.1-1.fc4 100% | 85.4 MiB/s | 87.4 KiB | 00m00s [108/131] Installing emacs-filesystem-1 100% | 0.0 B/s | 544.0 B | 00m00s [109/131] Installing libubsan-0:14.2.1- 100% | 263.7 MiB/s | 540.0 KiB | 00m00s [110/131] Installing libatomic-0:14.2.1 100% | 193.1 MiB/s | 197.8 KiB | 00m00s [111/131] Installing libasan-0:14.2.1-3 100% | 267.1 MiB/s | 1.6 MiB | 00m00s [112/131] Installing gcc-0:14.2.1-3.fc4 100% | 326.9 MiB/s | 93.8 MiB | 00m00s [113/131] Installing cuda-nvvm-12-6-0:1 100% | 237.4 MiB/s | 51.3 MiB | 00m00s [114/131] Installing cuda-crt-12-6-0:12 100% | 279.7 MiB/s | 859.1 KiB | 00m00s [115/131] Installing rhash-0:1.4.4-2.fc 100% | 192.5 MiB/s | 591.3 KiB | 00m00s [116/131] Installing jsoncpp-0:1.9.5-8. 100% | 32.9 MiB/s | 337.3 KiB | 00m00s [117/131] Installing cmake-data-0:3.30. 100% | 82.2 MiB/s | 8.8 MiB | 00m00s [118/131] Installing cmake-0:3.30.5-1.f 100% | 350.9 MiB/s | 28.4 MiB | 00m00s [119/131] Installing hiredis-0:1.2.0-3. 100% | 96.6 MiB/s | 395.8 KiB | 00m00s [120/131] Installing libstdc++-devel-0: 100% | 282.1 MiB/s | 15.2 MiB | 00m00s [121/131] Installing gcc-c++-0:14.2.1-3 100% | 294.4 MiB/s | 35.0 MiB | 00m00s [122/131] Installing libnccl-0:2.23.4-1 100% | 315.8 MiB/s | 244.1 MiB | 00m01s [123/131] Installing libnccl-devel-0:2. 100% | 5.8 MiB/s | 47.7 KiB | 00m00s [124/131] Installing cuda-nvcc-12-6-0:1 100% | 333.6 MiB/s | 181.2 MiB | 00m01s [125/131] Installing hiredis-devel-0:1. 100% | 88.6 MiB/s | 181.5 KiB | 00m00s [126/131] Installing annobin-plugin-gcc 100% | 64.5 MiB/s | 1.1 MiB | 00m00s [127/131] Installing gcc-plugin-annobin 100% | 10.8 MiB/s | 198.7 KiB | 00m00s [128/131] Installing rdma-core-devel-0: 100% | 47.1 MiB/s | 674.6 KiB | 00m00s [129/131] Installing cuda-gcc-12-c++-0: 100% | 312.0 MiB/s | 57.4 MiB | 00m00s [130/131] Installing cuda-cudart-devel- 100% | 246.6 MiB/s | 6.7 MiB | 00m00s [131/131] Installing cuda-nvml-devel-12 100% | 8.5 MiB/s | 1.5 MiB | 00m00s Warning: skipped PGP checks for 14 packages from repositories: copr_base, http_developer_download_nvidia_com_compute_cuda_repos_rhel9_sbsa, http_developer_download_nvidia_com_compute_cuda_repos_rhel9_x86_64 Complete! Finish: build setup for gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Start: rpmbuild gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Building target platforms: aarch64 Building for target aarch64 setting SOURCE_DATE_EPOCH=1600992000 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.QY2hX0 + 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.T6ztvF + 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 accd654da3dbe0074096b503a64e7dca997f0805 From https://github.com/facebookincubator/gloo * branch accd654da3dbe0074096b503a64e7dca997f0805 -> FETCH_HEAD + git reset --hard accd654da3dbe0074096b503a64e7dca997f0805 HEAD is now at accd654 add a github workflow for re-enabling CI (#398) + git log --format=fuller commit accd654da3dbe0074096b503a64e7dca997f0805 Author: Chirag Pandya AuthorDate: Tue Nov 26 18:11:39 2024 -0800 Commit: Facebook GitHub Bot CommitDate: Tue Nov 26 18:11:39 2024 -0800 add a github workflow for re-enabling CI (#398) Summary: Re-enable CI for gloo. 1. Disable libuv build in CI for windows as there are linker errors. Will resolve this later. 2. Remove tls_tcp_test.cc as this file does not exist anymore. 3. Put back win.cc and win.h files that were erroneously deleted. Pull Request resolved: https://github.com/facebookincubator/gloo/pull/398 Reviewed By: d4l3k Differential Revision: D66522118 Pulled By: c-p-i-o fbshipit-source-id: b2b65a1ad50471059cb30fac2b019eda9c99c8fe + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.UFXzUE + 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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 + 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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer' -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.0s) -- 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 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 -j4 [ 6%] Building CXX object gloo/CMakeFiles/gloo.dir/allgather.cc.o [ 4%] Building CXX object gloo/CMakeFiles/gloo.dir/algorithm.cc.o [ 3%] 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/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); | ^~~~~~~~~~~~~~~ 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); | ^~~~~~~~~~~~~~~ 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/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) { \ | ^~ /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/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) { \ | ^~ /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 [ 9%] Building CXX object gloo/CMakeFiles/gloo.dir/alltoall.cc.o [ 10%] Building CXX object gloo/CMakeFiles/gloo.dir/alltoallv.cc.o /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:11, 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:96:19: note: ‘struct gloo::float16’ declared here 96 | 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++) { | ~~^~~~~~~~~~~~~~ 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:223: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:223: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; | ^~~~~~~~~ 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); | ^~~~~~~~~~~~~~~ [ 12%] Building CXX object gloo/CMakeFiles/gloo.dir/barrier.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/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) { \ | ^~ [ 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/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) { | ~~^~~~~~~~~~~~~~~ /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 [ 20%] Building CXX object gloo/CMakeFiles/gloo.dir/math.cc.o [ 21%] Building CXX object gloo/CMakeFiles/gloo.dir/reduce.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) { \ | ^~ [ 23%] Building CXX object gloo/CMakeFiles/gloo.dir/scatter.cc.o [ 25%] Building CXX object gloo/CMakeFiles/gloo.dir/types.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) { \ | ^~ [ 26%] Building CXX object gloo/CMakeFiles/gloo.dir/common/logging.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/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) { \ | ^~ [ 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 [ 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 /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()); | ^~~~~~~~~~~~~~~ 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 [ 40%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/address.cc.o [ 42%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/buffer.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()); | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [ 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 [ 53%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/context.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)); | ^~~~~~~~~~~~~~~ [ 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/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:90:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 90 | 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:90:5: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 90 | 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:102:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 102 | 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:102:7: note: in expansion of macro ‘GLOO_ENFORCE_GT’ 102 | 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:126:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 126 | 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:126:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 126 | GLOO_ENFORCE_LE(offset + length, size_); | ^~~~~~~~~~~~~~~ [ 56%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/tcp/error.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:140:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 140 | 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:151:21: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 151 | 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:170:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 170 | for (int i = 0; i < unConnectedPeers.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/context.cc:171:13: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 171 | 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:308:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 308 | 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:308:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 308 | 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:308: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/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:290:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 290 | 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:290:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 290 | 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_)) { | ~~~^~~~~~~~~~~~ [ 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/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); | ^~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/transport/tcp/listener.cc:16: /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_)) { | ~~~^~~~~~~~~~~~ [ 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 [ 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/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/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)); | ^~~~~~~~~~~~~~~ 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()); | ^~~~~~~~~~~~~~~ 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:103:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 103 | 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:103:3: note: in expansion of macro ‘GLOO_ENFORCE_EQ’ 103 | 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:171:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 171 | 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:171:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 171 | 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:178:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 178 | 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:178:3: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 178 | 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:416:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 416 | 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:416:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 416 | GLOO_ENFORCE_LE(op.preamble.roffset + op.preamble.length, op.buf->size_); | ^~~~~~~~~~~~~~~ /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:651:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 651 | 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:651:3: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 651 | GLOO_ENFORCE_LE(state_, CONNECTED); | ^~~~~~~~~~~~~~~ /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:772:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 772 | 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:772:3: note: in expansion of macro ‘GLOO_ENFORCE_GE’ 772 | 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:839:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 839 | 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:839:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 839 | 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:841:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 841 | 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:841:5: note: in expansion of macro ‘GLOO_ENFORCE_NE’ 841 | 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:889:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 889 | 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:889:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 889 | 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:922:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 922 | 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:922:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 922 | 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:951:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 951 | 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:951:5: note: in expansion of macro ‘GLOO_ENFORCE_LE’ 951 | GLOO_ENFORCE_LE(nbytes, tbuf->size - offset); | ^~~~~~~~~~~~~~~ [ 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 [ 70%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/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/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_); | ^~~~~~~~~~~~~~~ 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"); | ^~~~~~~~~~~~~~~ [ 71%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/ibverbs/memory_region.cc.o [ 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/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); | ^~~~~~~~~~~~~~~ [ 75%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/address.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( | ^~~~~~~~~~~~~~~ [ 76%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/device.cc.o /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:132:31: warning: possibly dangling 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); | ^~~~~~~~~~~~~~~ /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) { \ | ^~ [ 78%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/context.cc.o 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) { | ^ /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); | ^~~~~~~~~~~~~~~ [ 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 [ 82%] Building CXX object gloo/CMakeFiles/gloo.dir/transport/uv/unbound_buffer.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( | ^~~~~~~~~~~~~~~ [ 84%] Linking CXX shared library libgloo.so [ 84%] Built target gloo [ 85%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/nccl/gloo_cuda_generated_nccl.cu.o [ 87%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/gloo_cuda_generated_cuda_private.cu.o [ 89%] Building NVCC (Device) object gloo/CMakeFiles/gloo_cuda.dir/gloo_cuda_generated_cuda.cu.o [ 90%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_halving_doubling.cc.o [ 93%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_local.cc.o [ 93%] Building CXX object gloo/CMakeFiles/gloo_cuda.dir/cuda_allreduce_bcube.cc.o [ 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)); | ^~~~~~~~~~ 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::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 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 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 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_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/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_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/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_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_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/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 = 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_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_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_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_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_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_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_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_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/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/common/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_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/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/common/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_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_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_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/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/common/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_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_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_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_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/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/common/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_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_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/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/common/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_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/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 ‘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_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_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_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_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_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_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_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 ‘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_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_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: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: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 = 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 ‘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::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_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: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::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_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/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/common/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: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_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: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 = 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_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: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/common/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 ‘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: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 = 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/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_) { 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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/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/common/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: 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_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_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/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_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: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: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: 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_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_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 = 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_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_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: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_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_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: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_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()); | ^~~~~~~~~~~~~~~ /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_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: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 = 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/common/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) { | ~~~~~^~~~~~~~ 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_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_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_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_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_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_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 = 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 ‘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_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: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 = 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/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/common/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_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: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: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 = 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: 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_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 = 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_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/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/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/common/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: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: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_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_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 ‘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::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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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::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_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_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: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_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_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_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: 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_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_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 ‘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_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_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_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::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_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: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 = 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_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_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_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_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_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_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::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_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_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 = 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_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_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::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 = 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_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/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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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_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_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_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_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_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_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_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_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: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_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/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_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_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_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: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::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_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_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_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_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_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_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_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::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/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_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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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_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_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_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_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_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_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_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_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_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_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_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 = 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/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()); | ^~~~~~~~~~~~~~~ /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::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_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_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.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_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_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.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_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_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.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_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) { | ~~~~~~~^~~~~~~~~~~~~~~~~~~~ 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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_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::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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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.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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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_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 = 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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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::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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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(), (& 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_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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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::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.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/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_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::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.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 = 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] | ~~^~~~~~~~~~~~~~~~~~~~~~~~ /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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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::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_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()); | ^~~~~~~~~~~~~~~ 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:1076: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 > >]’ 1076 | { 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: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/common/logging.h:132:31: warning: possibly dangling 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_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_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_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:1076: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 > >]’ 1076 | { 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_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_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::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()); | ^~~~~~~~~~~~~~~ /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:1076: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 > >]’ 1076 | { 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_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: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_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:1076: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 > >]’ 1076 | { 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_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()); | ^~~~~~~~~~~~~~~ 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/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: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: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_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_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:1076: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 > >]’ 1076 | { 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/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/common/logging.h:132:31: warning: possibly dangling 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_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_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:1076: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 > >]’ 1076 | { 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_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()); | ^~~~~~~~~~~~~~~ /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_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:1076: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 > >]’ 1076 | { 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_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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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:1076: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 > >]’ 1076 | { 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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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_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_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:1076: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 > >]’ 1076 | { 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_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 = 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_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_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:1076: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 > >]’ 1076 | { 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_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 = 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_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_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:1076: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 > >]’ 1076 | { 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_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/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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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:1076: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 > >]’ 1076 | { 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_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_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_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/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_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:1076: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 > >]’ 1076 | { 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_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_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_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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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_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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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/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.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:1076: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 > >]’ 1076 | { 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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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_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_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_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:1076: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 > >]’ 1076 | { 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/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: 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_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_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_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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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_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_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::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()); | ^~~~~~~~~~~~~~~ /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::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_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_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_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_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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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()); | ^~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~~ /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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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((& 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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( | ^~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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_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/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:1076: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 > >]’ 1076 | { 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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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 ‘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_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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/common/logging.h:132:31: warning: possibly dangling 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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( | ^~~~~~~~~~~~~~~ /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_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:1076: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 > >]’ 1076 | { 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_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_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_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:1076: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 > >]’ 1076 | { 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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; i++) { | ~~^~~ /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:1076: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 > >]’ 1076 | { 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 ‘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 ‘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:1076: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 > >]’ 1076 | { 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_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_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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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/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:1076: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 > >]’ 1076 | { 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_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/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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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/common/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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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_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:1076: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 > >]’ 1076 | { 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_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_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/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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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/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/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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | for (auto i = 0; i < n; 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:1076: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 > >]’ 1076 | { 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_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/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:1076: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 > >]’ 1076 | { 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/common/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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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.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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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/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::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()); | ^~~~~~~~~~~~~~~ /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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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_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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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/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_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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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( | ^~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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( | ^~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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: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/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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~~ /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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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"); | ^~~~~~~~~~~~~~~ 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~~ /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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = unsigned char; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = long int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:11: /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/common/logging.h:132:31: warning: possibly dangling 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/types.h:338:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 338 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:335:12: note: ‘temp’ declared here 335 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ /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:1076: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 > >]’ 1076 | { 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 = long unsigned int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 > >]’ 1076 | { 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 = int; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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++) { | ~~^~~~~~~~~~~~~~~~~~~~ /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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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 ‘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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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 = float; size_t = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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 ‘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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/common/logging.h:132:31: warning: possibly dangling 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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_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_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:1076: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 > >]’ 1076 | { 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/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/common/logging.h:132:31: warning: possibly dangling 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_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_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:1076: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 > >]’ 1076 | { 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/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/common/logging.h:132:31: warning: possibly dangling 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 ‘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_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:1076: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 > >]’ 1076 | { 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 = 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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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 ‘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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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 ‘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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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_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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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 ‘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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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 = 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:1076: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 > >]’ 1076 | { 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/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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = unsigned char]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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: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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = long unsigned int]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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 = double]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = float]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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::ReduceOp::ReduceOp(gloo::nccl::NCCLExecution&&, const gloo::CudaReductionFunction*, int) [with T = gloo::float16]’: /usr/include/c++/14/bits/unique_ptr.h:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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 = 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/common/logging.h:132:31: warning: possibly dangling reference to a temporary [-Wdangling-reference] 132 | const EnforceFailMessage& r = (condition); \ | ^ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/common/logging.h:147:3: note: in expansion of macro ‘GLOO_ENFORCE_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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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/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:11: /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:338:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 338 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:335:12: note: ‘temp’ declared here 335 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:11: /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:338:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 338 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:335:12: note: ‘temp’ declared here 335 | unsigned temp = ((sign << 31) | (exponent << 23) | mantissa); | ^~~~ In file included from /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/math.h:11, 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:338:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 338 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:335:12: note: ‘temp’ declared here 335 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = signed char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = unsigned char; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = long unsigned int; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = double; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:27:9: required from ‘void gloo::sum(T*, const T*, size_t) [with T = float16; size_t = long unsigned int]’ 27 | 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:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 20 | 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:11: /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:338:19: warning: ‘temp’ is used uninitialized [-Wuninitialized] 338 | return *(float*)rp; | ^~ /builddir/build/BUILD/gloo-0.5.0-build/gloo/gloo/types.h:335:12: note: ‘temp’ declared here 335 | 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:1076: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 >]’ 1076 | { 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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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:534: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 >]’ 534 | __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:1076: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 > >]’ 1076 | { 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.nDOQ8u + 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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -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 + pushd build ~/build/BUILD/gloo-0.5.0-build/gloo/build ~/build/BUILD/gloo-0.5.0-build/gloo + 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 -j4 --strict-build-id -m -i --build-id-seed 0.5.0-20241126.0.gitaccd654d.cu12_6.fc41 --unique-debug-suffix -0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 --unique-debug-src-base gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 50000000 -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-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 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 -j4 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-determinism --brp -j4 /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-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.qrb46O + 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.cQPWYN + 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-20241126.0.gitaccd654d.cu12_6.fc41 gloo(aarch-64) = 1:0.5.0-20241126.0.gitaccd654d.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-aarch64.so.1()(64bit) ld-linux-aarch64.so.1(GLIBC_2.17)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.34)(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-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.ocBGbr + 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.xRn7iS + 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-20241126.0.gitaccd654d.cu12_6.fc41 gloo-devel(aarch-64) = 1:0.5.0-20241126.0.gitaccd654d.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-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 Provides: gloo-debugsource = 1:0.5.0-20241126.0.gitaccd654d.cu12_6.fc41 gloo-debugsource(aarch-64) = 1:0.5.0-20241126.0.gitaccd654d.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-20241126.0.gitaccd654d.cu12_6.fc41.aarch64 Provides: debuginfo(build-id) = 03cec1aa000bc566512acf10489735479bdc40cb debuginfo(build-id) = 26483b1330cd07792358af4e8d8175e750dd75d9 gloo-debuginfo = 1:0.5.0-20241126.0.gitaccd654d.cu12_6.fc41 gloo-debuginfo(aarch-64) = 1:0.5.0-20241126.0.gitaccd654d.cu12_6.fc41 libgloo.so.1.0-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.debug()(64bit) libgloo_cuda.so.1.0-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.debug()(64bit) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: gloo-debugsource(aarch-64) = 1:0.5.0-20241126.0.gitaccd654d.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-devel-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/gloo-debugsource-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/gloo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.rpm Wrote: /builddir/build/RPMS/gloo-debuginfo-0.5.0-20241126.0.gitaccd654d.cu12_6.fc41.aarch64.rpm Executing(rmbuild): /bin/sh -e /var/tmp/rpm-tmp.2U6xm0 + 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-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm Finish: build phase for gloo-0.5.0-20241126.0.gitaccd654d.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-aarch64-1732831459.236129/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-20241126.0.gitaccd654d.cu12_6.fc41.src.rpm) Config(child) 1 minutes 48 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-debugsource", "epoch": 1, "version": "0.5.0", "release": "20241126.0.gitaccd654d.cu12_6.fc41", "arch": "aarch64" }, { "name": "gloo-debuginfo", "epoch": 1, "version": "0.5.0", "release": "20241126.0.gitaccd654d.cu12_6.fc41", "arch": "aarch64" }, { "name": "gloo", "epoch": 1, "version": "0.5.0", "release": "20241126.0.gitaccd654d.cu12_6.fc41", "arch": "src" }, { "name": "gloo-devel", "epoch": 1, "version": "0.5.0", "release": "20241126.0.gitaccd654d.cu12_6.fc41", "arch": "aarch64" }, { "name": "gloo", "epoch": 1, "version": "0.5.0", "release": "20241126.0.gitaccd654d.cu12_6.fc41", "arch": "aarch64" } ] } RPMResults finished