Highlight all text ranges for diagnostics in tests
Mark some expressions after processing their components
 when it's semantically correct

Expressions: calls, 'for' loops, elvis operators
It's significant for reporting 'unreachable code' correctly
Evaluate default value for argument non-deterministically
 in pseudocode
Added 'PARTLY_UNREACHABLE_CODE' error
Mark only unreachable parts of element if it has reachable parts
 like for 'return todo()' mark only 'return'
KT-2334 An error 'local function without body' is not reported
 #KT-2334 Fixed