Skip to content

Commit 21a9770

Browse files
Adds a test for #48070
Resolves #48070. The bug itself was fixed by #48770, but that PR didn't add a test for it.
1 parent fedce67 commit 21a9770

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

src/test/run-pass/issue-48070.rs

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution and at
3+
// http://rust-lang.org/COPYRIGHT.
4+
//
5+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
// option. This file may not be copied, modified, or distributed
9+
// except according to those terms.
10+
11+
// revisions: lxl nll
12+
13+
#![cfg_attr(nll, feature(nll))]
14+
15+
struct Foo {
16+
x: u32
17+
}
18+
19+
impl Foo {
20+
fn twiddle(&mut self) -> &mut Self { self }
21+
fn twaddle(&mut self) -> &mut Self { self }
22+
fn emit(&mut self) {
23+
self.x += 1;
24+
}
25+
}
26+
27+
fn main() {
28+
let mut foo = Foo { x: 0 };
29+
match 22 {
30+
22 => &mut foo,
31+
44 => foo.twiddle(),
32+
_ => foo.twaddle(),
33+
}.emit();
34+
}

0 commit comments

Comments
 (0)