Opened 11 years ago

Last modified 11 years ago

#170 new defect

Make COMPILE-FILE a multi-pass operation

Reported by: ehuelsmann Owned by: ehuelsmann
Priority: major Milestone: unscheduled
Component: compiler Version:
Keywords: Cc:
Parent Tickets:

Description

The single-pass implementation of COMPILE-FILE has several drawbacks:

  1. Only backward referenced function calls can be inlined (since forward referenced functions are unknown at the time of compilation)
  2. It's much harder to build an fasl-literal-object table with objects being referenced multiple times in the fasl; we need this item for compliance with section 3.2.4.4 of the CLHS

Change History (2)

comment:1 Changed 11 years ago by ehuelsmann

The compliance mentioned in item (2) requires not only making class generation multi-pass, but additionally to do 'pre-scanning' of the objects to be serialized, in order to initialize the circularity tables for dump-form to generate the structure 'anchors' #n= and #n#.

comment:2 Changed 11 years ago by Mark Evenson

Milestone: unscheduled
Note: See TracTickets for help on using tickets.