blob: e9e5b229da00458473207cf1cd7b5ac2a4543307 [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/rasta/generic_factory.dart:16:19: Error: Couldn't find constructor 'Missing'.
// factory A.c() = Missing;
// ^
//
// pkg/front_end/testcases/rasta/generic_factory.dart:16:19: Error: Redirection constructor target not found: 'Missing'
// factory A.c() = Missing;
// ^
//
// pkg/front_end/testcases/rasta/generic_factory.dart:15:19: Error: The constructor function type 'B<C1> Function()' isn't a subtype of 'A<T> Function()'.
// - 'B' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// - 'C1' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// - 'A' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// factory A.b() = B<C1>.a;
// ^
//
// pkg/front_end/testcases/rasta/generic_factory.dart:23:19: Error: The constructor function type 'C<C2> Function()' isn't a subtype of 'B<S> Function()'.
// - 'C' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// - 'C2' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// - 'B' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
// factory B.b() = C<C2>;
// ^
//
import self as self;
import "dart:core" as core;
class C1 extends core::Object {
synthetic constructor •() self::C1
;
}
class C2 extends core::Object {
synthetic constructor •() self::C2
;
}
class C3 extends core::Object {
synthetic constructor •() self::C3
;
}
class A<T extends core::Object? = dynamic> extends core::Object {
static final field dynamic _redirecting# = <dynamic>[self::A::a, self::A::b, self::A::c]/*isLegacy*/;
constructor internal() self::A<self::A::T%>
;
static factory a<T extends core::Object? = dynamic>() self::A<self::A::a::T%>
return self::B::a<self::A::a::T%>();
static factory b<T extends core::Object? = dynamic>() self::A<self::A::b::T%>
return invalid-expression "pkg/front_end/testcases/rasta/generic_factory.dart:15:19: Error: The constructor function type 'B<C1> Function()' isn't a subtype of 'A<T> Function()'.
- 'B' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
- 'C1' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
- 'A' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
factory A.b() = B<C1>.a;
^";
static factory c<T extends core::Object? = dynamic>() self::A<self::A::c::T%>
return invalid-expression "pkg/front_end/testcases/rasta/generic_factory.dart:16:19: Error: Redirection constructor target not found: 'Missing'
factory A.c() = Missing;
^";
}
class B<S extends core::Object? = dynamic> extends self::A<self::B::S%> {
static final field dynamic _redirecting# = <dynamic>[self::B::a, self::B::b]/*isLegacy*/;
constructor internal() self::B<self::B::S%>
;
static factory a<S extends core::Object? = dynamic>() self::B<self::B::a::S%>
return new self::C::•<self::B::a::S%>();
static factory b<S extends core::Object? = dynamic>() self::B<self::B::b::S%>
return invalid-expression "pkg/front_end/testcases/rasta/generic_factory.dart:23:19: Error: The constructor function type 'C<C2> Function()' isn't a subtype of 'B<S> Function()'.
- 'C' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
- 'C2' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
- 'B' is from 'pkg/front_end/testcases/rasta/generic_factory.dart'.
factory B.b() = C<C2>;
^";
}
class C<U extends core::Object? = dynamic> extends self::B<self::C::U%> {
constructor •() self::C<self::C::U%>
;
}
static method main() dynamic
;
Extra constant evaluation status:
Evaluated: ConstructorTearOff @ org-dartlang-testcase:///generic_factory.dart:11:7 -> ConstructorTearOffConstant(A.a)
Evaluated: ConstructorTearOff @ org-dartlang-testcase:///generic_factory.dart:11:7 -> ConstructorTearOffConstant(A.b)
Evaluated: ConstructorTearOff @ org-dartlang-testcase:///generic_factory.dart:11:7 -> ConstructorTearOffConstant(A.c)
Evaluated: ConstructorTearOff @ org-dartlang-testcase:///generic_factory.dart:19:7 -> ConstructorTearOffConstant(B.a)
Evaluated: ConstructorTearOff @ org-dartlang-testcase:///generic_factory.dart:19:7 -> ConstructorTearOffConstant(B.b)
Extra constant evaluation: evaluated: 9, effectively constant: 5