Permits assignment to occur conditionally within a `a?.b` or `a?[b]` expression. // M() is only executed if 'a' is non-null. // note: the value of 'a.b' doesn't affect whether things are evaluated ...
When attempting a conditional assignment after a statement containing an early return, the compiler seems to think that the assignment type is a return type when ...