[m-rev.] trivial diff: fix compilation error with inter-module optimization

Simon Taylor stayl at cs.mu.OZ.AU
Fri Nov 1 12:59:39 AEDT 2002


Estimated hours taken: 0.1
Branches: main

compiler/loop_inv.m:
	Fix a compilation error with `--intermodule-optimization',
	due to ambiguous overloading between `loop_inv__difference'
	and `set_ordlist__difference'.

Index: loop_inv.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/loop_inv.m,v
retrieving revision 1.1
diff -u -u -r1.1 loop_inv.m
--- loop_inv.m	31 Oct 2002 05:47:51 -0000	1.1
+++ loop_inv.m	1 Nov 2002 01:48:25 -0000
@@ -179,7 +179,7 @@
             % the set of recursive calls.
             %
         InvArgs0 = inv_args(ModuleInfo0, HeadVars, HeadVarModes, RecCalls),
-        InvArgs  = InvArgs0 `difference` UniquelyUsedVars,
+        InvArgs  = InvArgs0 `delete_elems` UniquelyUsedVars,
 
             % Given the invariant args, we can calculate the set
             % of invariant goals and vars.
@@ -197,8 +197,8 @@
             %
         dont_hoist(ModuleInfo0, InvGoals1, DontHoistGoals, DontHoistVars),
 
-        InvGoals = InvGoals1 `difference` DontHoistGoals,
-        InvVars  = InvVars1  `difference` DontHoistVars,
+        InvGoals = InvGoals1 `delete_elems` DontHoistGoals,
+        InvVars  = InvVars1  `delete_elems` DontHoistVars,
 
             % We only apply the optimization if the set of invariant goals
             % is non-empty.
@@ -211,7 +211,7 @@
             % between the whole invariant var set and the set of
             % invariant args.
             %
-        ComputedInvVars = InvVars `difference` InvArgs,
+        ComputedInvVars = InvVars `delete_elems` InvArgs,
 
             % We need to calculate the initial instmap for the aux
             % proc by applying the instmap_deltas from the InvGoals
@@ -252,12 +252,6 @@
         ProcInfo   = ProcInfo0,
         ModuleInfo = ModuleInfo0
     ).
-
-%------------------------------------------------------------------------------%
-
-:- func list(T) `difference` list(T) = list(T).
-
-Xs `difference` Ys = Xs `delete_elems` Ys.
 
 %------------------------------------------------------------------------------%
 
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list