Is @je legal with a single operand?

According to the Z-machine 1.1 standard:

je

2OP:1 1 je a b c d ?(label)

Jump if a is equal to any of the subsequent operands. (Thus @je a never jumps and @je a b jumps if a = b.)

je with just 1 operand is not permitted.

So what should be the result of @je a? Should it crash/UB (as the last paragraph specifies), or be a no-op (as the paragraph above that specifies)?

The last paragraph is correct (according to the clarifications in the 1.1 spec proposal), the ‘never jumps’ bit is left over from the previous wording which I didn’t fix properly at the time.

2 Likes