From fdcba4702bd9abf1e7639cf55524080e379003e3 Mon Sep 17 00:00:00 2001 From: Fergus Henderson Date: Tue, 8 Feb 2000 12:18:48 +0000 Subject: [PATCH] In the example use of c_pointer, use a no_tag type rather Estimated hours taken: 0.25 doc/reference_manual.texi: In the example use of c_pointer, use a no_tag type rather than an equivalence type, so that type class instance declarations will work properly for such a type. --- doc/reference_manual.texi | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/reference_manual.texi b/doc/reference_manual.texi index e902c8674..7a514604f 100644 --- a/doc/reference_manual.texi +++ b/doc/reference_manual.texi @@ -4117,6 +4117,7 @@ which is now mode-correct, executing that, and so on. (There is no interleaving of different individual conjuncts or function calls, however; the sub-goals are reordered, not split and interleaved.) Function application is strict, not lazy. +@c XXX should document the operational semantics of switches and if-then-elses Mercury implementations are required to provide a method of processing Mercury programs which is equivalent to the strict sequential @@ -4848,7 +4849,8 @@ between C functions which are called from Mercury. For example: :- implementation. % Our C structure is implemented as a c_pointer. -:- type complicated_c_structure == c_pointer. +:- type complicated_c_structure ---> + complicated_c_structure(c_pointer). :- pragma c_header_code(" extern struct foo *init_struct(void);