From 05b781a3c67ed59d7bf1acd1f0f082e74253500d Mon Sep 17 00:00:00 2001 From: Christopher Durham Date: Sat, 13 Aug 2022 00:00:35 -0500 Subject: [PATCH 1/2] Simplify `s![]` Fixes #1194 --- src/slice.rs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/slice.rs b/src/slice.rs index 0146d6dba..b8ee3e257 100644 --- a/src/slice.rs +++ b/src/slice.rs @@ -842,15 +842,11 @@ macro_rules! s( } }; // empty call, i.e. `s![]` - (@parse ::core::marker::PhantomData::<$crate::Ix0>, ::core::marker::PhantomData::<$crate::Ix0>, []) => { + (@parse $in_dim:expr, $out_dim:expr, []) => { { #[allow(unsafe_code)] unsafe { - $crate::SliceInfo::new_unchecked( - [], - ::core::marker::PhantomData::<$crate::Ix0>, - ::core::marker::PhantomData::<$crate::Ix0>, - ) + $crate::SliceInfo::new_unchecked([], $in_dim, $out_dim) } } }; From 7aecb925a516604d2d7d2f00d7f69b84fdbc015e Mon Sep 17 00:00:00 2001 From: Christopher Durham Date: Sat, 13 Aug 2022 05:29:19 -0500 Subject: [PATCH 2/2] Move macro binder evaluation out of unsafe context --- src/slice.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/slice.rs b/src/slice.rs index b8ee3e257..51146c94c 100644 --- a/src/slice.rs +++ b/src/slice.rs @@ -844,9 +844,11 @@ macro_rules! s( // empty call, i.e. `s![]` (@parse $in_dim:expr, $out_dim:expr, []) => { { + let in_dim = $in_dim; + let out_dim = $out_dim; #[allow(unsafe_code)] unsafe { - $crate::SliceInfo::new_unchecked([], $in_dim, $out_dim) + $crate::SliceInfo::new_unchecked([], in_dim, out_dim) } } };