]> git.lizzy.rs Git - rust.git/blob - src/test/ui/variance/variance-btree-invariant-types.rs
Auto merge of #100845 - timvermeulen:iter_compare, r=scottmcm
[rust.git] / src / test / ui / variance / variance-btree-invariant-types.rs
1 use std::collections::btree_map::{IterMut, OccupiedEntry, RangeMut, VacantEntry};
2
3 fn iter_cov_key<'a, 'new>(v: IterMut<'a, &'static (), ()>) -> IterMut<'a, &'new (), ()> {
4     v
5     //~^ lifetime may not live long enough
6 }
7 fn iter_cov_val<'a, 'new>(v: IterMut<'a, (), &'static ()>) -> IterMut<'a, (), &'new ()> {
8     v
9     //~^ lifetime may not live long enough
10 }
11 fn iter_contra_key<'a, 'new>(v: IterMut<'a, &'new (), ()>) -> IterMut<'a, &'static (), ()> {
12     v
13     //~^ lifetime may not live long enough
14 }
15 fn iter_contra_val<'a, 'new>(v: IterMut<'a, (), &'new ()>) -> IterMut<'a, (), &'static ()> {
16     v
17     //~^ lifetime may not live long enough
18 }
19
20 fn range_cov_key<'a, 'new>(v: RangeMut<'a, &'static (), ()>) -> RangeMut<'a, &'new (), ()> {
21     v
22     //~^ lifetime may not live long enough
23 }
24 fn range_cov_val<'a, 'new>(v: RangeMut<'a, (), &'static ()>) -> RangeMut<'a, (), &'new ()> {
25     v
26     //~^ lifetime may not live long enough
27 }
28 fn range_contra_key<'a, 'new>(v: RangeMut<'a, &'new (), ()>) -> RangeMut<'a, &'static (), ()> {
29     v
30     //~^ lifetime may not live long enough
31 }
32 fn range_contra_val<'a, 'new>(v: RangeMut<'a, (), &'new ()>) -> RangeMut<'a, (), &'static ()> {
33     v
34     //~^ lifetime may not live long enough
35 }
36
37 fn occ_cov_key<'a, 'new>(v: OccupiedEntry<'a, &'static (), ()>)
38                          -> OccupiedEntry<'a, &'new (), ()> {
39     v
40     //~^ lifetime may not live long enough
41 }
42 fn occ_cov_val<'a, 'new>(v: OccupiedEntry<'a, (), &'static ()>)
43                          -> OccupiedEntry<'a, (), &'new ()> {
44     v
45     //~^ lifetime may not live long enough
46 }
47 fn occ_contra_key<'a, 'new>(v: OccupiedEntry<'a, &'new (), ()>)
48                             -> OccupiedEntry<'a, &'static (), ()> {
49     v
50     //~^ lifetime may not live long enough
51 }
52 fn occ_contra_val<'a, 'new>(v: OccupiedEntry<'a, (), &'new ()>)
53                             -> OccupiedEntry<'a, (), &'static ()> {
54     v
55     //~^ lifetime may not live long enough
56 }
57
58 fn vac_cov_key<'a, 'new>(v: VacantEntry<'a, &'static (), ()>)
59                          -> VacantEntry<'a, &'new (), ()> {
60     v
61     //~^ lifetime may not live long enough
62 }
63 fn vac_cov_val<'a, 'new>(v: VacantEntry<'a, (), &'static ()>)
64                          -> VacantEntry<'a, (), &'new ()> {
65     v
66     //~^ lifetime may not live long enough
67 }
68 fn vac_contra_key<'a, 'new>(v: VacantEntry<'a, &'new (), ()>)
69                             -> VacantEntry<'a, &'static (), ()> {
70     v
71     //~^ lifetime may not live long enough
72 }
73 fn vac_contra_val<'a, 'new>(v: VacantEntry<'a, (), &'new ()>)
74                             -> VacantEntry<'a, (), &'static ()> {
75     v
76     //~^ lifetime may not live long enough
77 }
78
79
80 fn main() { }