// -*- rust -*- type compare = fn@(@T, @T) -> bool; fn test_generic(expected: @T, eq: compare) { let actual: @T = match true { true => { expected }, _ => fail }; assert (eq(expected, actual)); } fn test_box() { fn compare_box(b1: @bool, b2: @bool) -> bool { return *b1 == *b2; } test_generic::(@true, compare_box); } fn main() { test_box(); }