]> git.lizzy.rs Git - rust.git/blob - src/test/ui/symbol-names/const-generics-demangling.rs
Rollup merge of #105555 - krasimirgg:llvm-int-opt-2, r=cuviper
[rust.git] / src / test / ui / symbol-names / const-generics-demangling.rs
1 // build-fail
2 // revisions: legacy v0
3 // compile-flags: --crate-name=c
4 //[legacy]compile-flags: -C symbol-mangling-version=legacy -Z unstable-options
5 //    [v0]compile-flags: -C symbol-mangling-version=v0
6 //[legacy]normalize-stderr-test: "h[[:xdigit:]]{16}" -> "h[HASH]"
7 //    [v0]normalize-stderr-test: "c\[.*?\]" -> "c[HASH]"
8 #![feature(rustc_attrs)]
9
10 pub struct Unsigned<const F: u8>;
11
12 impl Unsigned<11> {
13     #[rustc_symbol_name]
14     //[v0]~^ ERROR symbol-name(_RNvMCs
15     //[v0]~| ERROR demangling(<c[
16     //[v0]~| ERROR demangling-alt(<c::Unsigned<11>>::f)
17     //[legacy]~^^^^ ERROR symbol-name(_ZN1c21Unsigned$LT$11_u8$GT$
18     //[legacy]~|    ERROR demangling(c::Unsigned<11_u8>::f::
19     //[legacy]~|    ERROR demangling-alt(c::Unsigned<11_u8>::f)
20     fn f() {}
21 }
22
23 pub struct Signed<const F: i16>;
24
25 impl Signed<-152> {
26     #[rustc_symbol_name]
27     //[v0]~^ ERROR symbol-name(_RNvMs_Cs
28     //[v0]~| ERROR demangling(<c[
29     //[v0]~| ERROR demangling-alt(<c::Signed<-152>>::f)
30     //[legacy]~^^^^ ERROR symbol-name(_ZN1c22Signed$LT$.152_i16$GT$
31     //[legacy]~|    ERROR demangling(c::Signed<.152_i16>::f::
32     //[legacy]~|    ERROR demangling-alt(c::Signed<.152_i16>::f)
33     fn f() {}
34 }
35
36 pub struct Bool<const F: bool>;
37
38 impl Bool<true> {
39     #[rustc_symbol_name]
40     //[v0]~^ ERROR symbol-name(_RNvMs0_Cs
41     //[v0]~| ERROR demangling(<c[
42     //[v0]~| ERROR demangling-alt(<c::Bool<true>>::f)
43     //[legacy]~^^^^ ERROR symbol-name(_ZN1c13Bool$LT$_$GT$
44     //[legacy]~|    ERROR demangling(c::Bool<_>::f::
45     //[legacy]~|    ERROR demangling-alt(c::Bool<_>::f)
46     fn f() {}
47 }
48
49 pub struct Char<const F: char>;
50
51 impl Char<'∂'> {
52     #[rustc_symbol_name]
53     //[v0]~^ ERROR symbol-name(_RNvMs1_Cs
54     //[v0]~| ERROR demangling(<c[
55     //[v0]~| ERROR demangling-alt(<c::Char<'∂'>>::f)
56     //[legacy]~^^^^ ERROR symbol-name(_ZN1c13Char$LT$_$GT$
57     //[legacy]~|    ERROR demangling(c::Char<_>::f::
58     //[legacy]~|    ERROR demangling-alt(c::Char<_>::f)
59     fn f() {}
60 }
61
62 fn main() {}