When performing lookahead for local variable assignments, make sure assignments taking place within loops are being propagated before loops. This makes sure smartcasts within non-inline declarations before the loop are disallowed. ^KT-63867 Fixed
List of issues: KT-28806, KT-7186, KT-22997, KT-1982, KT-22996, KT-54443, KT-37308, KT-37115, KT-4113, KT-25747, KT-24779