diff --git a/ci/util/build_and_test_targets.sh b/ci/util/build_and_test_targets.sh index f79bf2202e0..7714b8e8d5a 100755 --- a/ci/util/build_and_test_targets.sh +++ b/ci/util/build_and_test_targets.sh @@ -73,7 +73,7 @@ if [[ -n "${CONFIGURE_OVERRIDE}" ]]; then if [[ -n "${PRESET}" ]]; then echo "::warning:: --preset ignored due to --configure-override" >&2 fi - if [[ "${#CMAKE_OPTIONS}" -gt 0 ]]; then + if [[ "${#CMAKE_OPTIONS[@]}" -gt 0 ]]; then echo "::warning:: --cmake-options ignored due to --configure-override" >&2 fi fi @@ -103,7 +103,7 @@ if [[ -z "${BUILD_DIR}" ]]; then exit 1 fi -if [[ "${#BUILD_TARGETS}" -gt 0 ]]; then +if [[ "${#BUILD_TARGETS[@]}" -gt 0 ]]; then if ! (set -x; ninja -C "${BUILD_DIR}" "${BUILD_TARGETS[@]}"); then echo "::endgroup::" echo "🔴🛠️ Ninja build failed for targets ($(elapsed_time)): ${BUILD_TARGETS[*]@Q}" @@ -111,7 +111,7 @@ if [[ "${#BUILD_TARGETS}" -gt 0 ]]; then fi fi -if [[ "${#CTEST_TARGETS}" -gt 0 ]]; then +if [[ "${#CTEST_TARGETS[@]}" -gt 0 ]]; then for t in "${CTEST_TARGETS[@]}"; do if ! (set -x; ctest --test-dir "${BUILD_DIR}" -R "$t" -V --output-on-failure); then echo "::endgroup::" @@ -121,7 +121,7 @@ if [[ "${#CTEST_TARGETS}" -gt 0 ]]; then done fi -if [[ "${#LIT_PRECOMPILE_TESTS}" -gt 0 || "${#LIT_TESTS}" -gt 0 ]]; then +if [[ "${#LIT_PRECOMPILE_TESTS[@]}" -gt 0 || "${#LIT_TESTS[@]}" -gt 0 ]]; then lit_site_cfg="${BUILD_DIR}/libcudacxx/test/libcudacxx/lit.site.cfg" if [[ ! -f "${lit_site_cfg}" ]]; then echo "::endgroup::" @@ -130,7 +130,7 @@ if [[ "${#LIT_PRECOMPILE_TESTS}" -gt 0 || "${#LIT_TESTS}" -gt 0 ]]; then fi fi -if [[ "${#LIT_PRECOMPILE_TESTS}" -gt 0 ]]; then +if [[ "${#LIT_PRECOMPILE_TESTS[@]}" -gt 0 ]]; then for t in "${LIT_PRECOMPILE_TESTS[@]}"; do t_path="libcudacxx/test/libcudacxx/${t}" if ! (set -x; LIBCUDACXX_SITE_CONFIG="${lit_site_cfg}" lit -v "-Dexecutor=NoopExecutor()" "${t_path}"); then @@ -141,7 +141,7 @@ if [[ "${#LIT_PRECOMPILE_TESTS}" -gt 0 ]]; then done fi -if [[ "${#LIT_TESTS}" -gt 0 ]]; then +if [[ "${#LIT_TESTS[@]}" -gt 0 ]]; then for t in "${LIT_TESTS[@]}"; do t_path="libcudacxx/test/libcudacxx/${t}" if ! (set -x; LIBCUDACXX_SITE_CONFIG="${lit_site_cfg}" lit -v "${t_path}"); then diff --git a/cub/cub/device/device_reduce.cuh b/cub/cub/device/device_reduce.cuh index 41a835cfa85..9f408534524 100644 --- a/cub/cub/device/device_reduce.cuh +++ b/cub/cub/device/device_reduce.cuh @@ -116,6 +116,8 @@ private: if constexpr (Determinism == ::cuda::execution::determinism::__determinism_t::__gpu_to_gpu) { + // Only instantiated with `plus`; RFA hardcodes `deterministic_sum_t`. + (void) reduction_op; using default_policy_selector = detail::rfa::policy_selector_from_types; using policy_selector = ::cuda::std::execution::__query_result_or_t; diff --git a/libcudacxx/include/cuda/std/__algorithm/copy.h b/libcudacxx/include/cuda/std/__algorithm/copy.h index 8e2f387b6e5..817ffac7af4 100644 --- a/libcudacxx/include/cuda/std/__algorithm/copy.h +++ b/libcudacxx/include/cuda/std/__algorithm/copy.h @@ -86,13 +86,11 @@ _CCCL_EXEC_CHECK_DISABLE template _CCCL_API constexpr bool __constexpr_tail_overlap(_Tp* __first, _Up* __needle, [[maybe_unused]] _Tp* __last) { -#if !_CCCL_TILE_COMPILATION() // pointer values cannot be compared - if (!::cuda::std::is_constant_evaluated()) + if (!::cuda::std::__cccl_default_is_constant_evaluated()) { return __first < __needle; } else -#endif // !_CCCL_TILE_COMPILATION() { #if defined(_CCCL_BUILTIN_CONSTANT_P) NV_IF_ELSE_TARGET(NV_IS_HOST, diff --git a/libcudacxx/include/cuda/std/__bit/bit_cast.h b/libcudacxx/include/cuda/std/__bit/bit_cast.h index 98844e3038f..e62d4ab3019 100644 --- a/libcudacxx/include/cuda/std/__bit/bit_cast.h +++ b/libcudacxx/include/cuda/std/__bit/bit_cast.h @@ -51,10 +51,10 @@ _CCCL_DIAG_SUPPRESS_GCC("-Wclass-memaccess") template [[nodiscard]] _CCCL_API inline _To __bit_cast_memcpy(const _From& __from) noexcept { -#if !_CCCL_COMPILER(GCC, <=, 7) +#if !_CCCL_COMPILER(GCC, <=, 8) static_assert(::cuda::std::default_initializable<_To>, - "bit_cast memcpy fallback requires the destination type to be default initializable"); -#endif // !_CCCL_COMPILER(GCC, <=, 7) + "bit_cast memcpy fallback requires the destination type to be default constructible"); +#endif // !_CCCL_COMPILER(GCC, <=, 8) _To __temp; ::cuda::std::memcpy(&__temp, &__from, sizeof(_To)); return __temp; diff --git a/libcudacxx/test/libcudacxx/std/numerics/simd/simd.mask.class/ctor.pass.cpp b/libcudacxx/test/libcudacxx/std/numerics/simd/simd.mask.class/ctor.pass.cpp index 0848ec2e71d..ba8eed0703d 100644 --- a/libcudacxx/test/libcudacxx/std/numerics/simd/simd.mask.class/ctor.pass.cpp +++ b/libcudacxx/test/libcudacxx/std/numerics/simd/simd.mask.class/ctor.pass.cpp @@ -123,7 +123,7 @@ template TEST_FUNC constexpr void test_generator() { using Mask = simd::basic_mask>; -#if _CCCL_COMPILER(GCC, !=, 7) +#if _CCCL_COMPILER(GCC, >=, 9) static_assert(!noexcept(Mask(is_even{}))); #endif