mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-12 12:26:29 +00:00
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.
This commit is contained in:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user