         Edinburgh IMP77 Compiler - Version 8.4

    1  %begin
    2  
    3     %on %event 15 %start
    4       print string("END OF DIAGNOSTICS"); newline
    5       %stop
    6     %finish
    7     
    8     %routine the procedure(%integer i)
    9       %integer local variable
   10       local variable = i
   11  
   12       %on %event 15 %start
   13         print string("Entered from THEPROCEDURE "); write(i, -1); newlines(2)
   14         print string("LOCALVARIABLE = "); write(local variable, 0); newline
   15         ! For comparative testing: Vax compiler needs event_extra not event_info
   16         %signal 15, event_sub, event_info  { pass up one level to caller }
   17       %finish
   18  
   19       %signal 15, 1 %if i >= 10
   20       the procedure(i+3)
   21     %end
   22  
   23     the procedure(1)
   24  
   25  %endofprogram

   23 Statements compiled
