Skip to content

#2526: constexpr breaks CUDA relaxed-constexpr builds - #2527

Merged
lifflander merged 1 commit into
developfrom
2526-constexpr-getfunction-breaks-cuda-relaxed-constexpr-builds
Sep 23, 2026
Merged

lifflander merged 1 commit into
developfrom
2526-constexpr-getfunction-breaks-cuda-relaxed-constexpr-builds

Conversation

@cwschilly

Copy link
Copy Markdown
Contributor

Fixes #2526

@cwschilly cwschilly linked an issue Sep 16, 2026 that may be closed by this pull request
@github-actions

Copy link
Copy Markdown

clang-format output for this changeset:

diff --git a/src/vt/registry/auto/auto_registry_general.h b/src/vt/registry/auto/auto_registry_general.h
index ecd0c99a7..7dbfa3aa7 100644
--- a/src/vt/registry/auto/auto_registry_general.h
+++ b/src/vt/registry/auto/auto_registry_general.h
@@ -111,9 +111,7 @@ struct FunctorAdapterArgs {
   using ObjType = SentinelObject;
   using MsgType = MsgT;
 
-  static FunctionPtrType getFunction() {
-    return GetPtr::getFunction();
-  }
+  static FunctionPtrType getFunction() { return GetPtr::getFunction(); }
 
   static constexpr NumArgsType getNumArgs() {
     return 0;

@cwschilly cwschilly self-assigned this Sep 16, 2026
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 0 complexity · 0 duplication

Metric Results
Complexity 0
Duplication 0

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@github-actions

github-actions Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Pipelines results

vt-build-amd64-ubuntu-24-04-gcc-14-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-10-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-alpine-3-16-clang-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-clang-9-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-clang-18-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-9-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-clang-16-zoltan-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-9-ldms-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-clang-13-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-clang-16-vtk-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-clang-17-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-clang-11-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-gcc-12-vtk-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-gcc-11-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-clang-15-cpp-cxx20

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-clang-14-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-10-openmpi-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-icpx-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-22-04-clang-12-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-clang-10-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-9-cuda-11-4-3-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

/vt/src/vt/runtime/runtime.cc(1117): warning: parameter "comm" was declared but never referenced

/vt/src/vt/runtime/component/component_pack.impl.h(55): warning: parameter "seq" was declared but never referenced
          detected during:
            instantiation of "std::unique_ptr<T, std::default_delete<T>> vt::runtime::component::<unnamed>::tupleCons<T,Tuple>(Tuple &&) [with T=vt::arguments::ArgConfig, Tuple=std::tuple<std::unique_ptr<vt::arguments::ArgConfig, std::default_delete<vt::arguments::ArgConfig>>>]" 
(104): here
            instantiation of "vt::runtime::component::registry::AutoHandlerType vt::runtime::component::ComponentPack::registerComponent(T **, vt::runtime::component::BaseComponent::StartupDepsPack<StartupDeps...>, vt::runtime::component::BaseComponent::RuntimeDepsPack<RuntimeDeps...>, Cons &&...) [with T=vt::arguments::ArgConfig, StartupDeps=<>, RuntimeDeps=<>, Cons=<std::unique_ptr<vt::arguments::ArgConfig, std::default_delete<vt::arguments::ArgConfig>>>]" 
/vt/src/vt/runtime/runtime.cc(770): here

/vt/src/vt/runtime/component/component_pack.impl.h(55): warning: parameter "tup" was declared but never referenced
          detected during:
            instantiation of "std::unique_ptr<T, std::default_delete<T>> vt::runtime::component::<unnamed>::tupleConsImpl<T,Tuple,I...>(Tuple &&, std::index_sequence<I...>) [with T=vt::util::memory::MemoryUsage, Tuple=std::tuple<>, I=<>]" 
(64): here
            instantiation of "std::unique_ptr<T, std::default_delete<T>> vt::runtime::component::<unnamed>::tupleCons<T,Tuple>(Tuple &&) [with T=vt::util::memory::MemoryUsage, Tuple=std::tuple<>]" 
(104): here
            instantiation of "vt::runtime::component::registry::AutoHandlerType vt::runtime::component::ComponentPack::registerComponent(T **, vt::runtime::component::BaseComponent::StartupDepsPack<StartupDeps...>, vt::runtime::component::BaseComponent::RuntimeDepsPack<RuntimeDeps...>, Cons &&...) [with T=vt::util::memory::MemoryUsage, StartupDeps=<vt::ctx

 ==> And there is more. Read log. <==

View job log


vt-build-amd64-ubuntu-22-04-gcc-12-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-24-04-gcc-13-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

Compilation – successful

Testing – passed

View job log


vt-build-amd64-ubuntu-20-04-gcc-9-cuda-12-2-0-cpp

Build for 8769729 (2026-09-16 17:18:25 UTC)

/vt/lib/fmt/include/fmt-vt/base.h(458): warning #128-D: loop is not reachable
    for (; n != 0; ++s1, ++s2, --n) {
    ^
          detected during:
            instantiation of "auto fmt::v12::detail::compare(const Char *, const Char *, size_t)->int [with Char=char]" at line 573
            instantiation of "auto fmt::v12::basic_string_view<Char>::compare(fmt::v12::basic_string_view<Char>) const->int [with Char=char]" at line 580
            instantiation of class "fmt::v12::basic_string_view<Char> [with Char=char]" at line 2624
            instantiation of "auto fmt::v12::basic_format_args<Context>::get_id(fmt::v12::basic_string_view<Char>) const->int [with Context=fmt::v12::context, Char=char]" at line 2661

Remark: The warnings can be suppressed with "-diag-suppress <warning-number>"

/vt/lib/fmt/include/fmt-vt/format.h(2775): warning #2417-D: constexpr constructor calls non-constexpr function "fmt::v12::basic_memory_buffer<T, SIZE, Allocator>::basic_memory_buffer(const Allocator &) [with T=fmt::v12::detail::bigint::bigit, SIZE=32UL, Allocator=fmt::v12::detail::allocator<fmt::v12::detail::bigint::bigit>]"
    constexpr bigint() : exp_(0) {}
                                 ^

/vt/lib/fmt/include/fmt-vt/base.h(458): warning #128-D: loop is not reachable
    for (; n != 0; ++s1, ++s2, --n) {
    ^
          detected during:
            instantiation of "auto fmt::v12::detail::compare(const Char *, const Char *, size_t)->int [with Char=char]" at line 573
            instantiation of "auto fmt::v12::basic_string_view<Char>::compare(fmt::v12::basic_string_view<Char>) const->int [with Char=char]" at line 580
            instantiation of class "fmt::v12::basic_string_view<Char> [with Char=char]" at line 2624
            instantiation of "auto fmt::v12::basic_format_args<Context>::get_id(fmt::v12::basic_string_view<Char>) const->int [with Context=fmt::v12::context, Char=char]" at line 2661

Remark: The warnings can be suppressed with "-diag-suppress <warning-number>"

/

 ==> And there is more. Read log. <==

View job log


@cwschilly

Copy link
Copy Markdown
Contributor Author

CI will be fixed by #2525

@codecov

codecov Bot commented Sep 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.52%. Comparing base (da202eb) to head (7482bd7).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##           develop    #2527       +/-   ##
============================================
+ Coverage         0   88.52%   +88.52%     
============================================
  Files            0      728      +728     
  Lines            0    31028    +31028     
============================================
+ Hits             0    27467    +27467     
- Misses           0     3561     +3561     
Files with missing lines Coverage Δ
src/vt/registry/auto/auto_registry_general.h 100.00% <100.00%> (ø)

... and 727 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@lifflander lifflander left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lifflander
lifflander merged commit 9b7eef4 into develop Sep 23, 2026
37 of 38 checks passed
@cwschilly
cwschilly deleted the 2526-constexpr-getfunction-breaks-cuda-relaxed-constexpr-builds branch September 23, 2026 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

constexpr getFunction() breaks CUDA relaxed-constexpr builds

2 participants