But the return value is only defined when the last statement is an expression. The last statement is an unless statement, so the return value is undefined.
We were discussing what value is returned even though it's undefined. But that's always dangerous. As you've pointed out, it doesn't always work.