[libc-commits] [libc] [llvm] [libc] Support array tags in the RPC dispatch helpers (PR #181395)

Joseph Huber via libc-commits libc-commits at lists.llvm.org
Mon Feb 16 19:57:12 PST 2026


================
@@ -106,6 +106,25 @@ template <typename T, typename... Args>
 RPC_ATTRS constexpr bool is_trivially_constructible_v =
     is_trivially_constructible<T>::value;
 
+/// Tag type to indicate an array of elements being passed through RPC.
+template <typename T> struct array_ref {
+  T *data;
----------------
jhuber6 wrote:

Yeah, the way it's hooked up the `const` qualifier means we only copy it forward, not backward. This behavior is still attainable if you use `array_ref<const char>` as the type is just treated as a tag here for the size and all the other information should retain the same handling.

https://github.com/llvm/llvm-project/pull/181395


More information about the libc-commits mailing list