]> git.proxmox.com Git - rustc.git/blob - tests/pretty/issue-4264.pp
New upstream version 1.70.0+dfsg1
[rustc.git] / tests / pretty / issue-4264.pp
1 #[prelude_import]
2 use ::std::prelude::rust_2015::*;
3 #[macro_use]
4 extern crate std;
5 // pretty-compare-only
6 // pretty-mode:hir,typed
7 // pp-exact:issue-4264.pp
8
9 // #4264 fixed-length vector types
10
11 fn foo(_: [i32; (3 as usize)]) ({ } as ())
12
13 fn bar() ({
14 const FOO: usize = ((5 as usize) - (4 as usize) as usize);
15 let _: [(); (FOO as usize)] = ([(() as ())] as [(); 1]);
16
17 let _: [(); (1 as usize)] = ([(() as ())] as [(); 1]);
18
19 let _ =
20 (((&([(1 as i32), (2 as i32), (3 as i32)] as [i32; 3]) as
21 &[i32; 3]) as *const _ as *const [i32; 3]) as
22 *const [i32; (3 as usize)] as *const [i32; 3]);
23
24
25
26
27
28
29
30
31
32 ({
33 let res =
34 ((::alloc::fmt::format as
35 for<'a> fn(Arguments<'a>) -> String {format})(((<#[lang = "format_arguments"]>::new_const
36 as
37 fn(&[&'static str]) -> Arguments<'_> {Arguments::<'_>::new_const})((&([("test"
38 as &str)] as [&str; 1]) as &[&str; 1])) as Arguments<'_>))
39 as String);
40 (res as String)
41 } as String);
42 } as ())
43 type Foo = [i32; (3 as usize)];
44 struct Bar {
45 x: [i32; (3 as usize)],
46 }
47 struct TupleBar([i32; (4 as usize)]);
48 enum Baz { BazVariant([i32; (5 as usize)]), }
49 fn id<T>(x: T) -> T ({ (x as T) } as T)
50 fn use_id() ({
51 let _ =
52 ((id::<[i32; (3 as usize)]> as
53 fn([i32; 3]) -> [i32; 3] {id::<[i32; 3]>})(([(1 as i32),
54 (2 as i32), (3 as i32)] as [i32; 3])) as [i32; 3]);
55 } as ())
56 fn main() ({ } as ())