mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-21 12:23:44 +00:00
Estimated hours taken: 1 Change the documentation and test cases to reflect the fact that we currently don't support parallel makes for nested modules. (The comments in the write_depenency_file predicate in compiler/modules.m explain why not.) doc/reference_manual.texi: Update the list of bugs and limitations in the sub-modules chapter to say that we don't support parallel makes for nested modules. tests/hard_coded/Mmakefile: tests/hard_coded/nested*.m: tests/hard_coded/parent*.m: tests/hard_coded/sub-modules/Mmakefile: tests/hard_coded/sub-modules/nested*: tests/hard_coded/sub-modules/parent*: Move the sub-module test cases to a new subdirectory `tests/hard_coded/sub-modules'. One reason for this is just to separate out the test cases for this feature, just as we do with the typeclass test cases. But the other reason is to ensure that the nested module test cases won't get built in parallel, since currently there are some problems with the Mmake rules for building nested modules that cause race conditions if you use parallel makes.
35 lines
516 B
Mathematica
35 lines
516 B
Mathematica
:- module nested_intermod_main.
|
|
:- interface.
|
|
:- import_module io.
|
|
|
|
:- pred xyzzy(int).
|
|
:- mode xyzzy(in) is semidet.
|
|
|
|
:- pred main(io__state::di, io__state::uo) is det.
|
|
|
|
:- implementation.
|
|
:- import_module nested_intermod.
|
|
|
|
main -->
|
|
test(1),
|
|
test(2),
|
|
test(3),
|
|
test(4),
|
|
test(5).
|
|
|
|
:- pred test(int::in, io__state::di, io__state::uo) is det.
|
|
|
|
test(X) -->
|
|
print("X = "), print(X), print(": "),
|
|
( { xyzzy(X) } ->
|
|
print("yes")
|
|
;
|
|
print("no")
|
|
),
|
|
nl.
|
|
|
|
xyzzy(X) :-
|
|
foo(X).
|
|
|
|
:- end_module nested_intermod_main.
|