[m-rev.] for review 2/2: Fix bug300

Julien Fischer 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.

Cheers,
Julien.



More information about the reviews mailing list