process and signal assignment
Both events happen simultaneously, so sig_a gets a new value while sig_b does. In practice this is often done with cascading flip-flops, which are all clocked by the same edge, like in shift registers. This isn't a problem because the delay between the input and the output, so the input will take the old value of the previous output before it changes value.