diff options
| author | kennytm <kennytm@gmail.com> | 2018-03-14 16:29:53 +0800 |
|---|---|---|
| committer | kennytm <kennytm@gmail.com> | 2018-03-15 00:15:52 +0800 |
| commit | 4074bafcf141201baf941ba4d2e9be53433ef04d (patch) | |
| tree | 5bd9bfe8d7fabe0bc3fe64e4edc03f38267bf8ad | |
| parent | 088bf643bdbca5228648e6459911015b56f8d2f8 (diff) | |
| parent | 52bb99dcc7c918cc9568a3bd26801da07c1ce103 (diff) | |
| download | rust-4074bafcf141201baf941ba4d2e9be53433ef04d.tar.gz rust-4074bafcf141201baf941ba4d2e9be53433ef04d.zip | |
Rollup merge of #48988 - bobtwinkles:add_48070_test, r=nikomatsakis
Add a test for #48070 Resolves #48070. The bug itself was fixed by #48770, but that PR didn't add a test for it. r? @nikomatsakis
| -rw-r--r-- | src/test/ui/nll/issue-48070.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/test/ui/nll/issue-48070.rs b/src/test/ui/nll/issue-48070.rs new file mode 100644 index 00000000000..71d92c3702e --- /dev/null +++ b/src/test/ui/nll/issue-48070.rs @@ -0,0 +1,35 @@ +// Copyright 2018 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// run-pass +// revisions: lxl nll + +#![cfg_attr(nll, feature(nll))] + +struct Foo { + x: u32 +} + +impl Foo { + fn twiddle(&mut self) -> &mut Self { self } + fn twaddle(&mut self) -> &mut Self { self } + fn emit(&mut self) { + self.x += 1; + } +} + +fn main() { + let mut foo = Foo { x: 0 }; + match 22 { + 22 => &mut foo, + 44 => foo.twiddle(), + _ => foo.twaddle(), + }.emit(); +} |
