[m-rev.] diff: fix .module_dep files

Zoltan Somogyi zs at csse.unimelb.edu.au
Tue Jul 22 17:58:34 AEST 2008


On 22-Jul-2008, Peter Wang <novalazy at gmail.com> wrote:
> The recent renaming of the constructor `no_foreign_export' to
> `contains_no_foreign_export' broke `.module_dep' files.  The offending field
> was written out directly with `io.write', so the renaming changed the file
> format, but the parser still expected the old spelling "no_foreign_export".
> 
> `mmc --make' would then try to remake all the `.module_dep' files it
> couldn't parse, including modules whose source files we don't have at hand.
> 
> compiler/make.module_dep_file.m:
> 	Fix the bug.
> 
> 	Try to avoid a similar bug in another field.

That looks great; thanks Peter. However, "grep -w io.write make*.m" gives
five matches even after applying this diff. Will you please fix those as well?
And does anyone else know of any other cases where the compiler is depending
in the exact spelling of a function symbol to define part of a file format?

By the way, it could be that what caused my tests to fail was not the debug
grade but the fact that I don't build my workspaces with --use-subdirs.

Julien is looking into changing tools/bootcheck to build stage 2 both with
and without --use-subdirs, and using each version of stage 2 for the right
set of test directories.

Zoltan.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list