[m-rev.] for review: get tests/invalid working in the il grade

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Nov 8 03:08:04 AEDT 2002


On 07-Nov-2002, Peter Ross <pro at missioncriticalit.com> wrote:
> compiler/options.m:
> 	Add a new developer option, --no-automatic-intermodule-optimization.
> 	This is used to turn off intermodule optimization in the
> 	tests/invalid directory so that the error messages are no
> 	longer generated during the --make-optimization-interface
> 	process.
>
> compiler/handle_options.m:
> 	Test automatic-intermodule-optimization when determining
> 	whether to turn intermodule optimization on in the il grade.
>
> tests/invalid/Mercury.options:
> tests/invalid/purity/Mercury.options:
> 	Add --no-automatic-intermodule-optimization.

In the long run we should add better support to getopt.m for
determining whether an option has been explicitly or implicitly set/unset,
and then have the IL and Java grades override the intermodule
optimization setting only if "--no-intermodule-optimization" wasn't
explicitly set.

But this is fine for now, modulo one suggestion below.

> tests/invalid/foreign_singleton.err_exp2:
> tests/invalid/foreign_type_2.err_exp2:
> tests/invalid/pragma_c_code_dup_var.err_exp2:
> tests/invalid/pragma_c_code_no_det.err_exp2:
> 	Add a second expected error message for non C backends.

Fine.

> tests/invalid/impure_method_impl.m:
> tests/invalid/multimode_missing_impure.m:
> tests/invalid/multimode_syntax.m:
> tests/invalid/pragma_c_code_no_det.m:
> tests/invalid/purity/impure_func_t2.m:
> tests/invalid/purity/impure_func_t3.m:
> tests/invalid/purity/impure_func_t4.m:
> tests/invalid/purity/impure_func_t5.m:
> tests/invalid/purity/impure_func_t7.m:
> tests/invalid/purity/impure_pred_t1.m:
> tests/invalid/purity/impure_pred_t2.m:
> tests/invalid/purity/purity.m:
> 	Add Mercury implementations of foreign_code predicates.

Fine.

> Index: compiler/options.m
> @@ -3117,6 +3123,11 @@
>  		"\tOnly read the inter-module optimization information",
>  		"\tfor directly imported modules, not the transitive",
>  		"\tclosure of the imports.",
> +		/* Developer only option
> +		"--no-automatic-intermodule-optimization",
> +		"\tDon't automatically enable intermodule optimization for"
> +		"\tthose backends which require it.",
> +		*/

I suggest adding a comment "This is used in tests/invalid/Mercury.options"
after "Developer only option".

-- 
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