| ------------ #lib::foo ------------ |
| |
| RESULT: _T {}? |
| ------------ #lib::bar ------------ |
| |
| RESULT: _T {}? |
| ------------ #lib::bool_expressions ------------ |
| t0* = _Call direct [#lib::foo] () |
| t1 = _TypeCheck (t0 against dart.core::bool) (for #lib::foo() as{TypeError} dart.core::bool) |
| t2* = _Call direct [#lib::bar] () |
| t3* = _Call [dart.core::num::+] (_T (dart.core::int)+?, _T (dart.core::_Smi)) |
| i = _Join [dart.core::int] (_T (dart.core::_Smi), t3) |
| t5* = _Call [dart.core::num::<] (i, _T (dart.core::_Smi)) |
| t6* = _Call direct [#lib::bar] () |
| x = _Join [dart.core::bool] (t6, _T (dart.core::bool)+) |
| t8* = _Call direct [#lib::foo] () |
| t9 = _Join [dynamic] (_T (dart.core::bool)+, t8) |
| t10 = _Narrow (t9 to _T ANY?) |
| t11 = _TypeCheck (t10 against dart.core::bool) (for (x{dart.core::bool} ?{dynamic} true : #lib::foo()) as{TypeError} dart.core::bool) |
| t12* = _Call direct [#lib::bar] () |
| t13* = _Call direct [#lib::bar] () |
| t14* = _Call direct [#lib::foo] () |
| t15 = _TypeCheck (t14 against dart.core::bool) (for #lib::foo() as{TypeError} dart.core::bool) |
| t16* = _Call direct [#lib::foo] () |
| t17 = _TypeCheck (t16 against dart.core::bool) (for #lib::foo() as{TypeError} dart.core::bool) |
| y = _Join [dart.core::bool] (_T (dart.core::bool)+, t11, _T (dart.core::bool)+, _T (dart.core::bool)+) |
| RESULT: _T {}? |
| ------------ #lib::main ------------ |
| |
| RESULT: _T {}? |