[m-rev.] for review: fix foreign_decls in the LLDS grades
Simon Taylor
stayl at cs.mu.OZ.AU
Mon Aug 5 14:47:01 AEST 2002
On 01-Aug-2002, Peter Ross <pro at missioncriticalit.com> wrote:
> Estimated hours taken: 5
> Branches: main
>
> Record foreign_decls in the .mh file.
> This fixes a bug where a definitions of pragma exported functions where
> refereing to undefined pragma foreign_type names.
> Index: mercury/compiler/mlds_to_c.m
> ===================================================================
> RCS file: /home/staff/zs/imp/mercury/compiler/mlds_to_c.m,v
> retrieving revision 1.134
> diff -u -r1.134 mlds_to_c.m
> --- mercury/compiler/mlds_to_c.m 23 Jul 2002 16:35:36 -0000 1.134
> +++ mercury/compiler/mlds_to_c.m 31 Jul 2002 15:11:18 -0000
> @@ -547,11 +547,15 @@
> io__state, io__state).
> :- mode mlds_output_c_hdr_decls(in, in, in, di, uo) is det.
>
> -mlds_output_c_hdr_decls(_ModuleName, Indent, ForeignCode) -->
> +mlds_output_c_hdr_decls(ModuleName, Indent, ForeignCode) -->
> { ForeignCode = mlds__foreign_code(RevHeaderCode, _RevImports,
> _RevBodyCode, _ExportDefns) },
> { HeaderCode = list__reverse(RevHeaderCode) },
> - io__write_list(HeaderCode, "\n", mlds_output_c_hdr_decl(Indent)).
> + { DeclGuard = decl_guard(mlds_module_name_to_sym_name(ModuleName)) },
> + io__write_strings(["#ifndef ", DeclGuard,
> + "\n#define ", DeclGuard, "\n"]),
> + io__write_list(HeaderCode, "\n", mlds_output_c_hdr_decl(Indent)),
> + io__write_string("\n#endif\n").
You haven't addressed the review comments about the previous
version of this change.
Simon.
--------------------------------------------------------------------------
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