summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs')
-rw-r--r--src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs b/src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs
new file mode 100644
index 000000000..294b405e0
--- /dev/null
+++ b/src/test/ui/const-generics/array-impls/alloc-types-impls-length-33.rs
@@ -0,0 +1,25 @@
+// check-pass
+
+use std::{convert::TryFrom, rc::Rc, sync::Arc};
+
+pub fn yes_vec() {
+ let v: Vec<_> = [0; 33].into();
+}
+
+pub fn yes_box() {
+ let boxed_slice = Box::new([0; 33]) as Box<[i32]>;
+ let boxed_array = <Box<[i32; 33]>>::try_from(boxed_slice);
+ let boxed_slice = <Box<[i32]>>::from([0; 33]);
+}
+
+pub fn yes_rc() {
+ let boxed_slice = Rc::new([0; 33]) as Rc<[i32]>;
+ let boxed_array = <Rc<[i32; 33]>>::try_from(boxed_slice);
+}
+
+pub fn yes_arc() {
+ let boxed_slice = Arc::new([0; 33]) as Arc<[i32]>;
+ let boxed_array = <Arc<[i32; 33]>>::try_from(boxed_slice);
+}
+
+fn main() {}