[m-rev.] diff: Fix a bug in the handling of independent parallel conjunctions.

Paul Bone pbone at csse.unimelb.edu.au
Fri Jul 20 00:04:14 AEST 2012


Fix a bug in the handling of independent parallel conjunctions.

Fix an oversight I made when implementing the right recursion to left
recursion transformation for independent parallel conjunctions.  I noticed
this while describing the transformation for my thesis.

compiler/dep_par_conj.tex:
    As above.

diff --git a/compiler/dep_par_conj.m b/compiler/dep_par_conj.m
index 1869ec2..1523079 100644
--- a/compiler/dep_par_conj.m
+++ b/compiler/dep_par_conj.m
@@ -1418,7 +1418,7 @@ push_goal_into_conj(VarTypes, InstMapBeforeGoal, Goal, InstMapBeforePivotGoal,
             Goals = [ PivotGoal | Goals1 ]
         ;
             MaybeGoals1 = no,
-            Goals = [ Goal | Goals0 ]
+            Goals = [ Goal, PivotGoal | Goals0 ]
         ),
         MaybeGoals = yes(Goals)
     ;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: Digital signature
URL: <http://lists.mercurylang.org/archives/reviews/attachments/20120720/57546d7a/attachment.sig>


More information about the reviews mailing list