2 (c) copyright 1983 by the Vrije Universiteit, Amsterdam, The Netherlands.
4 This product is part of the Amsterdam Compiler Kit.
6 Permission to use, sell, duplicate or disclose this software must be
7 obtained in writing. Requests for such permissions may be sent to
9 Dr. Andrew S. Tanenbaum
17 program tstenc(output);
18 const rcsversion='$Id: tstenc.p,v 2.2 1994/06/24 12:37:08 ceriel Exp $';
23 procedure trap(erno:integer); extern;
24 procedure encaps(procedure p;procedure q(erno:integer)); extern;
30 begin plevel:=3 ; trap(trapno) ;
31 writeln('executing unreachable code in p2') ; e:=e+1 ;
33 procedure q2(no:integer);
37 begin writeln('wrong trapno ',no,' in q2'); e:=e+1 end ;
39 begin writeln('wrong level ',plevel,' in q2'); e:=e+1 end ;
42 writeln('executing unreachable code in q2') ; e:=e+1 ;
44 begin plevel:=2 ; encaps(p2,q2) ;
45 writeln('executing unreachable code in p1'); e:=e+1;
47 begin writeln('wrong level ', plevel, 'in p1') ; e:=e+1 end ;
50 procedure q1(no:integer);
54 begin writeln('wrong trapno ',no,' in q1'); e:=e+1 end ;
56 begin writeln('wrong level ',level,' in q1'); e:=e+1 end ;
64 begin writeln('illegaly skipped code in p1') ; e:=e+1 end;
65 if e=0 then writeln('encaps OK')