------------ foo ------------

RESULT: _T {}?
------------ bar ------------

RESULT: _T {}?
------------ bool_expressions ------------
t0* = _Call direct [#lib::foo] ()
t1 = _TypeCheck (t0 against dart.core::bool*) (for #lib::foo() as dart.core::bool*)
t2* = _Call direct [#lib::bar] ()
t3* = _Call [dart.core::num.+] (_T (dart.core::int)+, _T (dart.core::_Smi, 1))
i_0 = _Join [dart.core::int*] (_T (dart.core::_Smi, 0), t3)
t5* = _Call [dart.core::num.<] (i_0, _T (dart.core::_Smi, 10))
t6* = _Call direct [#lib::bar] ()
t7* = _Call direct [#lib::foo] ()
t8 = _Join [dynamic] (_T (dart.core::bool, true), t7)
t9 = _TypeCheck (t8 against dart.core::bool*) (for (x{dart.core::bool*} ?{dynamic} true : #lib::foo()) as dart.core::bool*)
t10* = _Call direct [#lib::bar] ()
t11* = _Call direct [#lib::bar] ()
t12* = _Call direct [#lib::foo] ()
t13 = _TypeCheck (t12 against dart.core::bool*) (for #lib::foo() as dart.core::bool*)
t14* = _Call direct [#lib::foo] ()
t15 = _TypeCheck (t14 against dart.core::bool*) (for #lib::foo() as dart.core::bool*)
y_0 = _Join [dart.core::bool*] (_T (dart.core::bool), _T (dart.core::bool, true))
RESULT: _T {}?
------------ main ------------

RESULT: _T {}?
