blob: 82211a9df490dfb56ed9bedaf8664b91ca3aadd4 [file] [log] [blame]
------------ #lib::C:: ------------
%this = _Parameter #0 [_T (#lib::C<dynamic>)+]
t1 = _Call direct [dart.core::Object::] (%this)
RESULT: _T {}?
------------ #lib::C::foo ------------
%this = _Parameter #0 [_T (#lib::C<dynamic>)+]
t1 = _Extract (%this[#lib::C/0])
t2 = _Instantiate (#lib::D @ [t1])
t3 = _Call direct [#lib::D::] (t2)
RESULT: t2
------------ #lib::D:: ------------
%this = _Parameter #0 [_T (#lib::D<dynamic>)+]
t1 = _Call direct [dart.core::Object::] (%this)
RESULT: _T {}?
------------ #lib::E:: ------------
%this = _Parameter #0 [_T (#lib::E<dynamic, dynamic>)+]
t1 = _Call direct [#lib::C::] (%this)
RESULT: _T {}?
------------ #lib::E::foo ------------
%this = _Parameter #0 [_T (#lib::E<dynamic, dynamic>)+]
t1* = _Call direct [#lib::C::foo] (%this)
RESULT: t1
------------ #lib::E::bar ------------
%this = _Parameter #0 [_T (#lib::E<dynamic, dynamic>)+]
t1 = _Extract (%this[#lib::E/1])
t2 = _Instantiate (#lib::D @ [t1])
t3 = _Call direct [#lib::D::] (t2)
RESULT: t2
------------ #lib::E::baz ------------
%this = _Parameter #0 [_T (#lib::E<dynamic, dynamic>)+]
t1 = _Extract (%this[#lib::E/2])
t2 = _Instantiate (#lib::D @ [t1])
t3 = _Call direct [#lib::D::] (t2)
RESULT: t2
------------ #lib::main ------------
t0 = _Call direct [#lib::C::] (_T (#lib::C<_TS (dart.core::int)>))
t1 = _Call [#lib::C::foo] (_T (#lib::C<_TS (dart.core::int)>))
t2 = _Call direct [#lib::E::] (_T (#lib::E<_TS (dart.core::String), _TS (dart.core::int), _TS (dart.core::String)>))
t3 = _Call [#lib::E::foo] (_T (#lib::E<_TS (dart.core::String), _TS (dart.core::int), _TS (dart.core::String)>))
RESULT: _T {}?