Die Sprungmarke könnte auch problematisch sein. Soweit ich weiß, muss das Ziel einer Sprungmarke im selben Anweisungsblock liegen wie das goto selbst. Versuche mal, ohne Sprungmarken auszukommen; die machen es oft nur schwerer, dem Programmfluss zu folgen.