[armedbear-ticket] [armedbear] #170: Make COMPILE-FILE a multi-pass operation
#170: Make COMPILE-FILE a multi-pass operation ------------------------+--------------------------------------------------- Reporter: ehuelsmann | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: Component: compiler | Version: Keywords: | ------------------------+--------------------------------------------------- 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) 1. 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 [http://www.lispworks.com/documentation/HyperSpec/Body/03_bdd.htm section 3.2.4.4 of the CLHS] -- Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/170> armedbear <http://common-lisp.net/project/armedbear> armedbear
#170: Make COMPILE-FILE a multi-pass operation ------------------------+--------------------------------------------------- Reporter: ehuelsmann | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: Component: compiler | Version: Keywords: | ------------------------+--------------------------------------------------- Comment(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#. -- Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/170#comment:1> armedbear <http://common-lisp.net/project/armedbear> armedbear
#170: Make COMPILE-FILE a multi-pass operation ------------------------+--------------------------------------------------- Reporter: ehuelsmann | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: unscheduled Component: compiler | Version: Keywords: | ------------------------+--------------------------------------------------- Changes (by mevenson): * milestone: => unscheduled -- Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/170#comment:2> armedbear <http://common-lisp.net/project/armedbear> armedbear
participants (1)
-
armedbear