blob: c6e0d5fafc48d46b35a6900b5bf526106cb0093b [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
typedef C<A extends core::Object, K extends core::Object> = <B extends core::Object>(A, K, B) core::int;
typedef D<K extends core::Object> = <A extends core::Object>(core::int) <B extends core::Object>(A, K, B) core::int;
static method producer<K extends core::Object>() dynamic {
return <A extends core::Object>(core::int v1) <B extends core::Object>(A, self::producer::K, B) core::int {
return <B extends core::Object>(A v2, self::producer::K v3, B v4) core::int => 0;
};
}
static method main() dynamic {
assert(self::producer<core::String>() is <A extends core::Object>(core::int) <B extends core::Object>(A, core::String, B) core::int);
}