'begin' 'begin' 'comment' example for dirty side effects. jump out of the dynamic initalisation of an array. ; 'integer' 'procedure' foo (n); 'begin' vprint (100); 'if' n < 0 'then' 'goto' barret; foo := n; vprint (150); 'end'; 'integer' 'array' ii [1 : foo (-10)]; vprint (50); barret: vprint (200); 'end'; 'begin' 'comment' a simple one. leave a function with goto to a second one. ; 'integer' 'procedure' foo (n); 'begin' 'integer' 'procedure' bar (n); 'begin' vprint (500); 'if' n < 0 'then' 'goto' barret; bar := n; vprint (501); 'end'; vprint (400); foo := 600; foo := bar (n); barret: 'end'; vprint (300); vprint (foo (-99)); 'end'; 'end'