I don't understand the point of this QotD.
I understand the cleverly-contrived illustration code. However, I'd never want to see anyone write code like that for my production environment. If this much confusion is caused by the simplest example to illustrate the issue, what problems are caused by early-exit in real world complexity?
I think I'll continue with the belief that "return" belongs at the end of a procedure. If I ever see anyone in my group using return in a "wrong" way, I'll require either a rewrite or a paragraph of commenting to explain why the potentially confusing construct is used.
btw, if return is encountered while a transaction is uncommitted - does it rollback?