In reply to sts:
Since bn is written within the block, it is the exception and not put into the sensitivity list.
And even if they were put in the sensitivity list, always blocks do not ever “retrigger” themselves. They wait for a change in a signal, then execute the block, make any changes, then wait for another set of changes. The changes made inside the block have already happened.