From 645ccbee856d3047f375180fef7a21ca7788daec Mon Sep 17 00:00:00 2001 From: Yanwen Xu Date: Tue, 1 Sep 2026 14:02:40 -0700 Subject: [PATCH] Vulkan backend: Add missing include of algorithm SharedObject.cpp and Squeeze.cpp call std::find (and Squeeze.cpp also std::rotate) without including . This compiled previously because the declarations leaked in transitively through other headers, but GCC 15's libstdc++ header reorganization removed that transitive path, breaking the build with: error: no matching function for call to 'find(...)' note: candidate 1: ... std::find(istreambuf_iterator<...>, ...) The remaining candidate is a narrow istreambuf_iterator-only overload pulled in via an unrelated header, not the generic one these call sites need. Fix by including directly, matching the precedent in backends/vulkan/runtime/utils/StorageUtils.h (#15220). Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_012pYceHYjdou8JBKdAdzVug --- backends/vulkan/runtime/graph/containers/SharedObject.cpp | 2 ++ backends/vulkan/runtime/graph/ops/impl/Squeeze.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/backends/vulkan/runtime/graph/containers/SharedObject.cpp b/backends/vulkan/runtime/graph/containers/SharedObject.cpp index 10ddd6f2ca3..7ea59d59e2e 100644 --- a/backends/vulkan/runtime/graph/containers/SharedObject.cpp +++ b/backends/vulkan/runtime/graph/containers/SharedObject.cpp @@ -10,6 +10,8 @@ #include +#include + namespace vkcompute { bool SharedObject::has_user(const ValueRef idx) const { diff --git a/backends/vulkan/runtime/graph/ops/impl/Squeeze.cpp b/backends/vulkan/runtime/graph/ops/impl/Squeeze.cpp index fce7600a035..056e1bf30e2 100644 --- a/backends/vulkan/runtime/graph/ops/impl/Squeeze.cpp +++ b/backends/vulkan/runtime/graph/ops/impl/Squeeze.cpp @@ -14,6 +14,8 @@ #include #include +#include + namespace vkcompute { void add_squeeze_copy_dims_node(