[m-rev.] for review: fix foreign_decls in the LLDS grades

David Overton dmo at cs.mu.OZ.AU
Wed Aug 7 11:44:55 AEST 2002


Hi Pete,

On Mon, Aug 05, 2002 at 03:16:24PM +0200, Peter Ross wrote:
> --- mercury/compiler/modules.m	29 Jul 2002 07:50:55 -0000	1.241
> +++ mercury/compiler/modules.m	5 Aug 2002 12:45:17 -0000
> @@ -2063,6 +2063,20 @@
>  			Intermod),
>  		globals__io_lookup_accumulating_option(intermod_directories,
>  			IntermodDirs),
> +
> +			% If intermodule_optimization is enabled then
> +			% build all the .c files before the .o files to
> +			% avoid problems with foreign_import_module
> +			% dependencies not being correctly calculated.
> +		( { Intermod = yes } ->
> +			io__write_strings(DepStream, [
> +				"\n\n",
> +				ObjFileName, " : "
> +			]),
> +			write_dependencies_list(AllDeps, ".c", DepStream)
> +		;
> +			[]
> +		),
>  		( { Intermod = yes ; UseOptFiles = yes } ->
>  			io__write_strings(DepStream, [
>  				"\n\n", 

I think this change is buggy.  E.g. when compiling a program "warplan",
`warplan.d' contains

warplan.$O :  \
	array.c \
	assoc_list.c \
	benchmarking.c \
	bintree.c \
	bintree_set.c \
	bool.c \
	builtin.c \
	char.c \
	construct.c \
	deconstruct.c \
	dir.c \
	enum.c \
	exception.c \
	float.c \
	hal_int.c \
	int.c \
	io.c \
	lexer.c \
	list.c \
	map.c \
	math.c \
	nb_reference.c \
	numeric.c \
	ops.c \
	parser.c \
	private_builtin.c \
	random.c \
	reference.c \
	require.c \
	rtti_implementation.c \
	scoped_update.c \
	set.c \
	set_ordlist.c \
	set_unordlist.c \
	std_util.c \
	store.c \
	string.c \
	system.c \
	table_builtin.c \
	term.c \
	term_io.c \
	time.c \
	tree234.c \
	type_desc.c \
	varset.c

So when I do `mmake warplan' I get an error message from make that it
does not know how to build `array.c', etc.

Could you please either fix this or back out that change.


David
--
David Overton                  Uni of Melbourne     +61 3 8344 9159
dmo at cs.mu.oz.au                Monash Uni (Clayton) +61 3 9905 5779
http://www.cs.mu.oz.au/~dmo    Mobile Phone         +61 4 0337 4393
--------------------------------------------------------------------------
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