[m-rev.] for review 2/2: Fix bug300
jfischer at opturion.com
Mon Oct 7 11:50:56 AEDT 2013
On Wed, 2 Oct 2013, Paul Bone wrote:
> Fix bug300
> The last call modulo construction (LCMC) transformation ignores from ground
> term scopes, this is incorrect when the from ground term scope makes ground
> one of the variables whose construction we're trying to move before a
> recursive call. This can occur when the from ground term scope occurs in a
> non-recursive case (and possible alternative recursive cases). This was
> only affecting non-C grades because the C grades transform the from ground
> term scopes into single unification before LCMC is performed.
> We fix this bug by performing the LCMC transformation on a from ground term
> (FGT) scope by treating the scope as a construction unification goal. This
> is correct because such a goal is always the last goal in the FGT scope. We
> only process scopes that bind one of the variables whose construction we're
> trying to optimize.
That looks fine.
More information about the reviews