From 5c76b64546a0bb8f087562e4d19d62b828c8d6d0 Mon Sep 17 00:00:00 2001 From: Eduard-Mihai Burtescu Date: Wed, 30 May 2018 14:36:53 +0300 Subject: rustc: don't visit lifetime parameters through visit_lifetime. --- src/test/compile-fail/underscore-lifetime-binders.rs | 1 - src/test/run-pass/issue-51185.rs | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 src/test/run-pass/issue-51185.rs (limited to 'src/test') diff --git a/src/test/compile-fail/underscore-lifetime-binders.rs b/src/test/compile-fail/underscore-lifetime-binders.rs index eb00ab5f67a..6a6698957d9 100644 --- a/src/test/compile-fail/underscore-lifetime-binders.rs +++ b/src/test/compile-fail/underscore-lifetime-binders.rs @@ -23,7 +23,6 @@ impl<'a> Meh<'a> for u8 {} fn meh() -> Box Meh<'_>> //~ ERROR invalid lifetime parameter name: `'_` //~^ ERROR missing lifetime specifier -//~^^ ERROR missing lifetime specifier { Box::new(5u8) } diff --git a/src/test/run-pass/issue-51185.rs b/src/test/run-pass/issue-51185.rs new file mode 100644 index 00000000000..8e286ad1419 --- /dev/null +++ b/src/test/run-pass/issue-51185.rs @@ -0,0 +1,17 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +fn foo() -> impl Into fn(&'a ())> { + (|_| {}) as for<'a> fn(&'a ()) +} + +fn main() { + foo().into()(&()); +} -- cgit 1.4.1-3-g733a5