summaryrefslogtreecommitdiff
path: root/samples/test/for_underscore_drop.rs
blob: b6ed46d09b1d5b27a38cf70b268a226a3cda5834 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// compile-flags: --test

struct DropFlag<'a>(&'a mut i32);
impl<'a> ::std::ops::Drop for DropFlag<'a>
{
    fn drop(&mut self) {
        *self.0 += 1;
    }
}

#[test]
fn values_in_for_loop_dropped()
{
    let mut foo = 0;
    for _ in Some(DropFlag(&mut foo))
    {
    }
    assert_eq!(foo, 1);
}