Skip to content

Commit 2786ea6

Browse files
nikomatsakischrisvittal
authored andcommitted
some tests featuring multiple bounds, other errors
1 parent 15001ee commit 2786ea6

File tree

2 files changed

+49
-0
lines changed

2 files changed

+49
-0
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// Copyright 2017 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+
#![feature(universal_impl_trait)]
12+
13+
use std::fmt::Display;
14+
15+
fn foo(f: impl Display + Clone) -> String {
16+
let g = f.clone();
17+
format!("{} + {}", f, g)
18+
}
19+
20+
fn main() {
21+
let sum = foo(format!("22"));
22+
assert_eq!(sum, r"22 + 22");
23+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// Copyright 2017 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+
#![feature(universal_impl_trait)]
12+
13+
use std::fmt::Display;
14+
15+
fn foo(f: impl Display + Clone) -> String {
16+
wants_debug(f);
17+
wants_display(f);
18+
wants_clone(f);
19+
}
20+
21+
fn wants_debug(g: impl Debug) { }
22+
fn wants_display(g: impl Debug) { }
23+
fn wants_cone(g: impl Clone) { }
24+
25+
fn main() {
26+
}

0 commit comments

Comments
 (0)