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

import "dart:async";

static field asy::Future<core::int*>* futureInt = null;
static field dynamic f = () → dynamic => self::futureInt;
static field dynamic g = () → asy::Future<dynamic>* async => self::futureInt;
static method main() → dynamic {
  self::f;
  self::g;
}
