diff options
Diffstat (limited to 'tests/ui/generics/generic-temporary.rs')
-rw-r--r-- | tests/ui/generics/generic-temporary.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/ui/generics/generic-temporary.rs b/tests/ui/generics/generic-temporary.rs new file mode 100644 index 000000000..b63b534d0 --- /dev/null +++ b/tests/ui/generics/generic-temporary.rs @@ -0,0 +1,16 @@ +// run-pass + +fn mk() -> isize { return 1; } + +fn chk(a: isize) { println!("{}", a); assert_eq!(a, 1); } + +fn apply<T>(produce: fn() -> T, + consume: fn(T)) { + consume(produce()); +} + +pub fn main() { + let produce: fn() -> isize = mk; + let consume: fn(v: isize) = chk; + apply::<isize>(produce, consume); +} |