aboutsummaryrefslogtreecommitdiff
path: root/src/test/run-pass/generic-temporary.rs
blob: 98401ecc1c5ee8d9da18bd05c56cf554988b66bd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
fn mk() -> int {
  ret 1;
}

fn chk(&int a) {
  log a;
  check (a == 1);
}

fn apply[T](fn() -> T produce, fn(&T) consume) {
  consume(produce());
}

fn main() {
  let (fn()->int) produce = mk;
  let (fn(&int)) consume = chk;
  apply[int](produce, consume);
}