Ну вот как объяснить очевидную вещь. GOTO это жесткое вмешательство в код. И вот если при редакции других конструкций понятно что меняется, зачем (конструкция обозрима и вообще имеет место быть) и компилятор хоть как-то следит за их целостностью, то при GOTO этого нет (конструкции нет есть метка и жесткий переход на нее). Этим оператором вы можете заставить компилятор сгенерить код, которого он бы вообще не делал. (-)