From 008fd95d73bb500c3744ed8721a4b256eb0dac5c Mon Sep 17 00:00:00 2001 From: Russel Arbore <russel.jma@gmail.com> Date: Fri, 31 Jan 2025 17:47:57 -0600 Subject: [PATCH] fix lifetime --- hercules_rt/src/lib.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/hercules_rt/src/lib.rs b/hercules_rt/src/lib.rs index c5ef5f6a..ed5dca1d 100644 --- a/hercules_rt/src/lib.rs +++ b/hercules_rt/src/lib.rs @@ -152,12 +152,12 @@ impl<'a> HerculesCPURefMut<'a> { #[cfg(feature = "cuda")] impl<'a> HerculesCUDARef<'a> { - pub fn to_cpu_ref<T>(self, dst: &mut [T]) -> HerculesCPURef<'a> { + pub fn to_cpu_ref<'b, T>(self, dst: &'b mut [T]) -> HerculesCPURefMut<'b> { unsafe { let size = self.size; let ptr = NonNull::new(dst.as_ptr() as *mut u8).unwrap(); __copy_cuda_to_cpu(ptr.as_ptr(), self.ptr.as_ptr(), size); - HerculesCPURef { + HerculesCPURefMut { ptr, size, _phantom: PhantomData, @@ -192,12 +192,12 @@ impl<'a> HerculesCUDARefMut<'a> { } } - pub fn to_cpu_ref<T>(self, dst: &mut [T]) -> HerculesCPURef<'a> { + pub fn to_cpu_ref<'b, T>(self, dst: &mut [T]) -> HerculesCPURefMut<'b> { unsafe { let size = self.size; let ptr = NonNull::new(dst.as_ptr() as *mut u8).unwrap(); __copy_cuda_to_cpu(ptr.as_ptr(), self.ptr.as_ptr(), size); - HerculesCPURef { + HerculesCPURefMut { ptr, size, _phantom: PhantomData, -- GitLab