summaryrefslogtreecommitdiffstats
path: root/src/test/ui/type/type-alias-bounds.stderr
blob: 92e573393c90e4cac0298fcaf2c2ea953218e24e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:8:14
   |
LL | type SVec<T: Send + Send> = Vec<T>;
   |              ^^^^   ^^^^
   |
   = note: `#[warn(type_alias_bounds)]` on by default
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type SVec<T: Send + Send> = Vec<T>;
LL + type SVec<T> = Vec<T>;
   |

warning: where clauses are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:10:21
   |
LL | type S2Vec<T> where T: Send = Vec<T>;
   |                     ^^^^^^^
   |
help: the clause will not be checked when the type alias is used, and should be removed
   |
LL - type S2Vec<T> where T: Send = Vec<T>;
LL + type S2Vec<T>  = Vec<T>;
   |

warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:12:19
   |
LL | type VVec<'b, 'a: 'b + 'b> = (&'b u32, Vec<&'a i32>);
   |                   ^^   ^^
   |
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type VVec<'b, 'a: 'b + 'b> = (&'b u32, Vec<&'a i32>);
LL + type VVec<'b, 'a> = (&'b u32, Vec<&'a i32>);
   |

warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:14:18
   |
LL | type WVec<'b, T: 'b + 'b> = (&'b u32, Vec<T>);
   |                  ^^   ^^
   |
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type WVec<'b, T: 'b + 'b> = (&'b u32, Vec<T>);
LL + type WVec<'b, T> = (&'b u32, Vec<T>);
   |

warning: where clauses are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:16:25
   |
LL | type W2Vec<'b, T> where T: 'b, T: 'b = (&'b u32, Vec<T>);
   |                         ^^^^^  ^^^^^
   |
help: the clause will not be checked when the type alias is used, and should be removed
   |
LL - type W2Vec<'b, T> where T: 'b, T: 'b = (&'b u32, Vec<T>);
LL + type W2Vec<'b, T>  = (&'b u32, Vec<T>);
   |

warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:47:12
   |
LL | type T1<U: Bound> = U::Assoc;
   |            ^^^^^
   |
help: use fully disambiguated paths (i.e., `<T as Trait>::Assoc`) to refer to associated types in type aliases
  --> $DIR/type-alias-bounds.rs:47:21
   |
LL | type T1<U: Bound> = U::Assoc;
   |                     ^^^^^^^^
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type T1<U: Bound> = U::Assoc;
LL + type T1<U> = U::Assoc;
   |

warning: where clauses are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:48:18
   |
LL | type T2<U> where U: Bound = U::Assoc;
   |                  ^^^^^^^^
   |
help: use fully disambiguated paths (i.e., `<T as Trait>::Assoc`) to refer to associated types in type aliases
  --> $DIR/type-alias-bounds.rs:48:29
   |
LL | type T2<U> where U: Bound = U::Assoc;
   |                             ^^^^^^^^
help: the clause will not be checked when the type alias is used, and should be removed
   |
LL - type T2<U> where U: Bound = U::Assoc;
LL + type T2<U>  = U::Assoc;
   |

warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:56:12
   |
LL | type T5<U: Bound> = <U as Bound>::Assoc;
   |            ^^^^^
   |
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type T5<U: Bound> = <U as Bound>::Assoc;
LL + type T5<U> = <U as Bound>::Assoc;
   |

warning: bounds on generic parameters are not enforced in type aliases
  --> $DIR/type-alias-bounds.rs:57:12
   |
LL | type T6<U: Bound> = ::std::vec::Vec<U>;
   |            ^^^^^
   |
help: the bound will not be checked when the type alias is used, and should be removed
   |
LL - type T6<U: Bound> = ::std::vec::Vec<U>;
LL + type T6<U> = ::std::vec::Vec<U>;
   |

warning: 9 warnings emitted