BackbuttonEpilog Procedure

An Epilog Procedure is a procedure which is executed before the Block in which it is located is exited.

It must be an Untyped Procedure with No Parameters.

A Block which contains an Epilog Procedure must have a Software Control Word with the AlgolEpiF flag set, and immediately below the SCW there must be the PCW for the Epilog Procedure.

  	0041 (02,002B)  6 800000 681800  SCW: Blockexit marker: Connection/Structure Blocks,
                                      Epilog Procedure, Library Templates, Multi-dim
                                      Arrays, Single-dim Arrays
	0040 (02,002A)  7 800024 301D4D  PCW:  ASD=00EA6C, LL=3, Segment @ 0006:0001:1, Normal state    
	003F (02,0029)  0 FFFFFF FFFFFF  TOS          (Real)         Dec: -7.006492321611341-46   
	003E (02,0028)  7 800024 301D4D  BLOCKCLEANUP (Epilog procedure)  ASD=00EA6C, LL=3,
                                               Segment @ 0006:0001:1, Normal state 
                                               

The Algol Compiler recreates the PCW for the Epilog Procedure before storing the SCW, so there are 2 copies of the PCW, the other one being at the point of declaration.