From ddb17b239b5b2b05932516bfb6b7679915fd4c27 Mon Sep 17 00:00:00 2001 From: Brian Koropoff Date: Thu, 6 Nov 2014 00:06:41 -0800 Subject: [PATCH] Add regression test for #18685 --- src/test/run-pass/issue-18685.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/test/run-pass/issue-18685.rs diff --git a/src/test/run-pass/issue-18685.rs b/src/test/run-pass/issue-18685.rs new file mode 100644 index 00000000000..1f74e2f8474 --- /dev/null +++ b/src/test/run-pass/issue-18685.rs @@ -0,0 +1,30 @@ +// Copyright 2014 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. + +// Test that the self param space is not used in a conflicting +// manner by unboxed closures within a default method on a trait + +#![feature(unboxed_closures, overloaded_calls)] + +trait Tr { + fn foo(&self); + + fn bar(&self) { + (|:| { self.foo() })() + } +} + +impl Tr for () { + fn foo(&self) {} +} + +fn main() { + ().bar(); +}