chiark / gitweb /
W
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 16 May 2022 14:59:54 +0000 (15:59 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 16 May 2022 14:59:54 +0000 (15:59 +0100)
src/main.rs

index b88c5a33e0599a9cf0e5d366e9f7b3c8e3f3b7ac..44e85ebb79a72298d4ab336faf7c8210a7bdadda 100644 (file)
@@ -12,19 +12,21 @@ impl Ish for Inner {
     const F: &'static [&'static str] = &["i"];
 }
 
-const fn plus<AN: usize, BN: usize>(x: &'static [&'static str],
+const fn plus<const AN: usize, const BN: usize>(x: &'static [&'static str],
                                     b: &'static [&'static str])
     -> &'static [&'static str]
 {
-    unsafe {
-        static mupt A: [MaybeUninit<&'static str>; _] = [MaybeUninit::new_uninit(); AN + BN];
-    }
+    const N: usize = AN + BN;
+//    unsafe {
+        static mut ary: [MaybeUninit<&'static str>; _] = [MaybeUninit::new_uninit(); N];
+//    }
     panic!()
 }
 
 struct Outer { o: usize, }
 impl Ish for Outer {
-    const F: &'static [&'static str] = plus/<Inner::N, 1>(
+    const N: usize = Inner::N + 1;
+    const F: &'static [&'static str] = plus::<{Inner::N}, 1>(
         Inner::F,
         &["o"]
     );