1.0.46.33: constraint: Don't substitute REFs when replacement LEAF is not visible.
authorAlastair Bridgewater <lisphacker@users.sourceforge.net>
Fri, 11 Mar 2011 15:35:30 +0000 (15:35 +0000)
committerAlastair Bridgewater <lisphacker@users.sourceforge.net>
Fri, 11 Mar 2011 15:35:30 +0000 (15:35 +0000)
commit4d7b7a70cbb3cd7bf64897747d407f40803e3d72
tree6249f5add915b4ef2572f73fade8fc211b8604f8
parentf2c2f0d480ce63689af4b4d63fa5b51d024641b1
1.0.46.33: constraint: Don't substitute REFs when replacement LEAF is not visible.

  * Bug reported by Frank Duncan, additional diagnosis by Heka Treep,
patch review and revision by Nikodemus Siivola.

  * Introduce LEAF-VISIBLE-FROM-NODE-P, which verifies that the LEAF
about to be substituted is visible from the NODE to be modified.

  * Add LEAF-VISIBLE-FROM-NODE-P as an additional precondition to
calling CHANGE-REF-LEAF, which does the actual substitution.

  * And, for good measure, added a test to the test suite.
NEWS
src/compiler/constraint.lisp
tests/compiler.pure.lisp
version.lisp-expr