To avoid issues with what you mention, in order to just specify a
"static" level, also something like this:
break<4>
break ::4::
or
break @4
or whatever other syntax that is easily parseable with no excessive
lookahead and no ambiguities
"break 4" syntax is good enough:
the next statement cannot start with a literal number,
so only a simple look-ahead is required.
Would the "break 4" target be easy to locate when reading code?
Absolute location identifiers (such as "goto ::my_break_label::")
may be more understandable than relative values (such as "break 4").