library test;
import self as self;
import "dart:core" as core;

typedef FunctionReturningNum = () → core::num;
static method main() → dynamic {
  core::int i = 1;
  core::Object o = 1;
  () → core::num a = () → dynamic => i;
  () → core::num b = () → dynamic => o;
  () → core::num c = () → dynamic {
    return i;
  };
  () → core::num d = () → dynamic {
    return o;
  };
}
