We currently read PZ files in two passes, the first pass calculates the size required for procedures (which is runtime dependant) and allocates the procedures. The 2nd pass does the real read and is able to resolve references as the allocation of the other procedures has now been done. We could do this in one pass if we keep a table of forward references that have not been resolved, then check it as we read procedures.
We currently read PZ files in two passes, the first pass calculates the size required for procedures (which is runtime dependant) and allocates the procedures. The 2nd pass does the real read and is able to resolve references as the allocation of the other procedures has now been done. We could do this in one pass if we keep a table of forward references that have not been resolved, then check it as we read procedures.