PROGRAM test;

   LABEL 9999;

   VAR
      i, j, k: Integer;
      l: longint;
      c: char;
      b1, b2, b3: Boolean;
      s: string[50];

   {$s seg1}

   PROCEDURE proc1;
     INLINE 1, 2, 3, 4, 5, 6;

   PROCEDURE Stop;

      LABEL 998, 999;

      BEGIN
         GOTO 999;
         GOTO 998;
    998: i := l;
         l := i;
         l := 53555763;
         s := '123';
         s := '1234567890123456789012345678901234567890';
         s := 'abcdefg''ghij"lmn1234"''pqrstu''12356789ɾ^012345';
         CASE c OF
           'a'..'c': i := 1;
           'd'..'f': i := 2;
           Otherwise i := 3;
         END;
    999: proc1;
         GOTO 998;
         IF b1 AND b2 THEN
            s := '1234567890123456789012345678901234567890'
         ELSE
            l := 53555763;
         Exit(test);
      END;

   {$s seg2}

   Function q: longint;

      BEGIN
      i := Ord(c);
      GOTO 9999;
      END;

   BEGIN
      GOTO 9999;
      i := 1;
      j := 2;
      k := 3;
      i := j+k;
      i := 4; j := 5; k := 6;
      i := i+1;
      Stop;
      l := q;
   9999:
   END.

