]> git.proxmox.com Git - rustc.git/blame - src/test/run-pass/array-slice-vec/check-static-slice.rs
New upstream version 1.33.0+dfsg1
[rustc.git] / src / test / run-pass / array-slice-vec / check-static-slice.rs
CommitLineData
b7449926
XL
1// run-pass
2
1a4d82fc
JJ
3// Check that the various ways of getting to a reference to a vec (both sized
4// and unsized) work properly.
5
1a4d82fc 6
92a42be0
SL
7const AA: [isize; 3] = [1, 2, 3];
8const AB: &'static [isize; 3] = &AA;
9const AC: &'static [isize] = AB;
10const AD: &'static [isize] = &AA;
11const AE: &'static [isize; 3] = &[1, 2, 3];
12const AF: &'static [isize] = &[1, 2, 3];
c34b1796 13
92a42be0
SL
14static CA: isize = AA[0];
15static CB: isize = AB[1];
16static CC: isize = AC[2];
17static CD: isize = AD[0];
18static CE: isize = AE[1];
19static CF: isize = AF[2];
20
21static AG: &'static isize = &AA[2];
1a4d82fc
JJ
22
23fn main () {
c34b1796 24 let b: &[isize] = &[1, 2, 3];
92a42be0
SL
25 assert_eq!(AC, b);
26 assert_eq!(AD, b);
27 assert_eq!(AF, b);
28 assert_eq!(*AG, 3);
1a4d82fc 29
92a42be0
SL
30 assert_eq!(CA, 1);
31 assert_eq!(CB, 2);
32 assert_eq!(CC, 3);
33 assert_eq!(CD, 1);
34 assert_eq!(CE, 2);
35 assert_eq!(CF, 3);
1a4d82fc 36}