mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-19 03:13:40 +00:00
Estimated hours taken: 0.5 Branches: main compiler/hlds_out.m: When writing a mode-specific clause in a `.opt' file, get the modes of the procedure using proc_info_declared_argmodes rather than proc_info_argmodes. This is necessary because the test in make_hlds.m to work out whether a clause matches a mode declaration uses syntactic equality on the modes, but the modes returned by proc_info_argmodes may have been expanded by propagate_types_into_modes. compiler/intermod.m: Tell hlds_out.m to use the declared modes when writing clauses. tests/hard_coded/multimode.m: tests/hard_coded/multimode_main.exp: Test case.
16 lines
224 B
Plaintext
16 lines
224 B
Plaintext
func0 = out
|
|
func1(in) = out
|
|
func1(out) = out
|
|
func2(in, in) = out
|
|
func2(in, out) = out
|
|
func2(out, in) = out
|
|
func2(out, out) = out
|
|
test0
|
|
test1(in)
|
|
test1(out)
|
|
test2(in, in)
|
|
test2(in, out)
|
|
test2(out, in)
|
|
test2(out, out)
|
|
semidet
|