]> git.lizzy.rs Git - rust.git/blob - tests/ui/consts/const-needs_drop.rs
Rollup merge of #106962 - compiler-errors:use-sugg-span, r=oli-obk
[rust.git] / tests / ui / consts / const-needs_drop.rs
1 // run-pass
2
3 use std::mem;
4
5 #[allow(unused_tuple_struct_fields)]
6 struct Trivial(u8, f32);
7
8 #[allow(unused_tuple_struct_fields)]
9 struct NonTrivial(u8, String);
10
11 const CONST_U8: bool = mem::needs_drop::<u8>();
12 const CONST_STRING: bool = mem::needs_drop::<String>();
13 const CONST_TRIVIAL: bool = mem::needs_drop::<Trivial>();
14 const CONST_NON_TRIVIAL: bool = mem::needs_drop::<NonTrivial>();
15
16 static STATIC_U8: bool = mem::needs_drop::<u8>();
17 static STATIC_STRING: bool = mem::needs_drop::<String>();
18 static STATIC_TRIVIAL: bool = mem::needs_drop::<Trivial>();
19 static STATIC_NON_TRIVIAL: bool = mem::needs_drop::<NonTrivial>();
20
21 fn main() {
22     assert!(!CONST_U8);
23     assert!(CONST_STRING);
24     assert!(!CONST_TRIVIAL);
25     assert!(CONST_NON_TRIVIAL);
26
27     assert!(!STATIC_U8);
28     assert!(STATIC_STRING);
29     assert!(!STATIC_TRIVIAL);
30     assert!(STATIC_NON_TRIVIAL);
31 }