diff: document that `pragma minimal_model' doesn't work

Fergus Henderson fjh at cs.mu.OZ.AU
Thu Nov 5 00:47:51 AEDT 1998


Estimated hours taken: 1

compiler/table_gen.m:
doc/reference_manual.texi:
	Document that `pragma minimal_model' tabling doesn't work yet.

Index: compiler/table_gen.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/table_gen.m,v
retrieving revision 1.3
diff -u -r1.3 table_gen.m
--- table_gen.m	1998/08/07 00:49:31	1.3
+++ table_gen.m	1998/11/04 13:42:14
@@ -26,6 +26,9 @@
 % the semantics behind the transformation. Currently only SLGd is 
 % implemented. 
 %
+% XXX the current implementation of minimal_model tabling is buggy;
+% e.g. it fails for tests/tabling/coup.m.
+%
 % Example of transformation for semidet minimal_model :
 %
 %	Given the following code for left recursive transitive closure :
Index: doc/reference_manual.texi
===================================================================
RCS file: /home/mercury1/repository/mercury/doc/reference_manual.texi,v
retrieving revision 1.109
diff -u -r1.109 reference_manual.texi
--- reference_manual.texi	1998/11/02 02:35:28	1.109
+++ reference_manual.texi	1998/11/04 13:43:13
@@ -4297,6 +4297,14 @@
 and reports runtime errors, while @samp{pragma minimal_model}
 computes the ``minimal model'' semantics.
 
+ at c XXX we should fix this bug...
+ at cartouche
+ at strong{Warning:}
+The current implementation of @samp{pragma minimal_model} is broken:
+the generated code sometimes produces incorrect results.  It should
+not be used.
+ at end cartouche
+
 The syntax for each of these declarations is
 
 @example
@@ -4355,6 +4363,7 @@
 runtime overheads from the more complicated execution mechanism
 required by (minimal model) tabling.
 
+ at cartouche
 @strong{Please note:}
 the current implementation of tabling does not support all the
 possible compilation grades (see the "Compilation model options"
@@ -4363,6 +4372,11 @@
 or if you select a garbage collection method other than the default
 (conservative), then any use of tabling will result in a
 ``Sorry, not implemented'' error at runtime.
+
+ at c XXX we should fix this bug...
+ at strong{Reminder}: the current implementation of
+ at samp{pragma minimal_model} is broken.
+ at end cartouche
 
 @node Termination analysis
 @subsection Termination analysis


-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.



More information about the developers mailing list