To me, it seems not much of an advantage not knowing the jump location at compile time. Intel processors don't predict indirect jumps, do they? (don't remember well...)Why not just use setjmp/longjmp? This seems like it has all the advantages of the goto, plus the fact the target is not fixed at compile-time, but can be adjusted by the program as it needs.
I don't really see in what cases it is interesting to have the target modified.