blob: 6ef653523dc157a3effa93566fe4540a873c5b13 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/type_variable_bound_access.dart:22:36: Error: The getter 'length' isn't defined for the class 'num'.
// Try correcting the name to the name of an existing getter, or defining a getter or field named 'length'.
// num method2() => field1 + field2.length;
// ^^^^^^
//
import self as self;
import "dart:core" as core;
class DynamicClass<T extends dynamic = dynamic, S extends self::DynamicClass::T* = dynamic> extends core::Object {
generic-covariant-impl field self::DynamicClass::T* field1;
generic-covariant-impl field self::DynamicClass::T* field2;
constructor •(self::DynamicClass::T* field1, self::DynamicClass::T* field2) self::DynamicClass<self::DynamicClass::T*, self::DynamicClass::S*>*
: self::DynamicClass::field1 = field1, self::DynamicClass::field2 = field2, super core::Object::•()
;
method method() dynamic
return this.{self::DynamicClass::field1}.*(this.{self::DynamicClass::field2});
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
class NumClass<T extends core::num* = core::num*, S extends self::NumClass::T* = core::num*> extends core::Object {
generic-covariant-impl field self::NumClass::T* field1;
generic-covariant-impl field self::NumClass::S* field2;
constructor •(self::NumClass::T* field1, self::NumClass::S* field2) self::NumClass<self::NumClass::T*, self::NumClass::S*>*
: self::NumClass::field1 = field1, self::NumClass::field2 = field2, super core::Object::•()
;
method method1() core::num*
return this.{self::NumClass::field1}.{core::num::*}(this.{self::NumClass::field2});
method method2() core::num*
return this.{self::NumClass::field1}.{core::num::+}(invalid-expression "pkg/front_end/testcases/general/type_variable_bound_access.dart:22:36: Error: The getter 'length' isn't defined for the class 'num'.
Try correcting the name to the name of an existing getter, or defining a getter or field named 'length'.
num method2() => field1 + field2.length;
^^^^^^" as{TypeError,ForDynamic} core::num);
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
class Class<X5 extends self::Class::X4* = core::int*, X4 extends self::Class::X3* = core::int*, X3 extends self::Class::X2* = core::int*, X2 extends self::Class::X1* = core::int*, X1 extends self::Class::X0* = core::int*, X0 extends core::int* = core::int*> extends core::Object {
generic-covariant-impl field self::Class::X0* field0 = null;
generic-covariant-impl field self::Class::X1* field1 = null;
generic-covariant-impl field self::Class::X2* field2 = null;
generic-covariant-impl field self::Class::X3* field3 = null;
generic-covariant-impl field self::Class::X4* field4 = null;
generic-covariant-impl field self::Class::X5* field5 = null;
synthetic constructor •() self::Class<self::Class::X5*, self::Class::X4*, self::Class::X3*, self::Class::X2*, self::Class::X1*, self::Class::X0*>*
: super core::Object::•()
;
method method() dynamic {
this.{self::Class::field0}.{core::int::isEven};
this.{self::Class::field1}.{core::int::isEven};
this.{self::Class::field2}.{core::int::isEven};
this.{self::Class::field3}.{core::int::isEven};
this.{self::Class::field4}.{core::int::isEven};
this.{self::Class::field5}.{core::int::isEven};
}
abstract member-signature get _identityHashCode() core::int*; -> core::Object::_identityHashCode
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) core::bool*; -> core::Object::_instanceOf
abstract member-signature method _simpleInstanceOf(dynamic type) core::bool*; -> core::Object::_simpleInstanceOf
abstract member-signature method _simpleInstanceOfTrue(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfTrue
abstract member-signature method _simpleInstanceOfFalse(dynamic type) core::bool*; -> core::Object::_simpleInstanceOfFalse
abstract member-signature operator ==(dynamic other) core::bool*; -> core::Object::==
abstract member-signature get hashCode() core::int*; -> core::Object::hashCode
abstract member-signature method toString() core::String*; -> core::Object::toString
abstract member-signature method noSuchMethod(core::Invocation* invocation) dynamic; -> core::Object::noSuchMethod
abstract member-signature get runtimeType() core::Type*; -> core::Object::runtimeType
}
static method main() dynamic {
new self::DynamicClass::•<core::num*, core::int*>(0.5, 2).{self::DynamicClass::method}();
new self::NumClass::•<core::num*, core::double*>(2, 0.5).{self::NumClass::method1}();
}