[m-rev.] diff: Fix a problem with threading in the IL backend

Jonathan Morgan jonmmorgan at gmail.com
Mon Jun 11 21:46:21 AEST 2007


Estimated hours taken: 0.2
Branches: main

Fixed problems with the thread module that prevent it from compiling with
the IL backend.

library/thread.m:
	Exported a Mercury predicate to IL, and used it correctly.

Index: library/thread.m
===================================================================
RCS file: /home/mercury1/repository/mercury/library/thread.m,v
retrieving revision 1.9
diff -u -r1.9 thread.m
--- library/thread.m	1 May 2007 01:11:42 -0000	1.9
+++ library/thread.m	11 Jun 2007 11:42:20 -0000
@@ -321,6 +321,9 @@
 :- pragma foreign_export("C",
     call_back_to_mercury(pred(di, uo) is cc_multi, di, uo),
     "ML_call_back_to_mercury_cc_multi").
+:- pragma foreign_export("IL",
+    call_back_to_mercury(pred(di, uo) is cc_multi, di, uo),
+    "ML_call_back_to_mercury_cc_multi").

 call_back_to_mercury(Goal, !IO) :-
     Goal(!IO).
@@ -338,7 +341,7 @@

     public void execute_goal()
     {
-        mercury.thread.mercury_code.call_back_to_mercury_cc_multi(Goal);
+        mercury.thread.mercury_code.ML_call_back_to_mercury_cc_multi(Goal);
     }
 }").
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list