[m-rev.] diff: fix pragma export bug with foreign types

Fergus Henderson fjh at cs.mu.OZ.AU
Wed May 8 16:19:47 AEST 2002


On 07-May-2002, Peter Ross <peter.ross at miscrit.be> wrote:
> 
> Fix a bug where for the LLDS backend we where outputting the foreign
> type name for pragma exported functions, instead of MR_Word.

The second "where" should be "were".

It would help if the log message explained why this was a bug.

> +++ compiler/foreign.m	7 May 2002 14:30:33 -0000
> @@ -79,6 +79,11 @@
>  :- func foreign__to_type_string(foreign_language, exported_type) = string.
>  :- func foreign__to_type_string(foreign_language, module_info, (type)) = string.
>  
> +	% Give a representation of a type determine the string which
> +	% corresponds to that type when the type is mentioned via a
> +	% pragma export on the llds backend.
> +:- func llds_exported_type_string(module_info, (type)) = string.

s/Give/Given/
s/a representation of a type/a Mercury type,/

In fact it would be best to rewrite it, e.g.

	% Given a Mercury type, return the corresponding C type
	% that should be used for that Mercury type in procedures
	% exported using `pragma export' on the LLDS back-end.

But I don't understand why this would be different between the LLDS and
MLDS back-ends.  The C interface should be the same for both, shouldn't it?

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
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