    println!("foo: {}", transfer_if_odd("foo"));
    println!("foobar: {}", transfer_if_odd("foobar"));
}

fn transfer_if_odd(val: &'static str) -> bool {
    let dr = DynRef::new();
    {
        let mut lifetime = Lifetime::empty();
        let s = String::from(val);
        assert!(dr.is_none());
        {
            stack_let!(inner_lifetime = dr.lock(&s));
            assert!(dr.is_some());