tests/hard_coded/export_test2.m:
tests/invalid/foreign_type_line_number.m:
tests/valid/assoc_list_bug.m:
tests/valid/determinism.m:
tests/valid/mode_merge_insts.m
tests/valid/unify_inst_bug.m:
As above, mainly replacing bits of syntax that are no longer
supported.
tests/hard_coded/Mmakefile:
Delete references to the IL backend.
tests/invalid/*.{m,err_exp}:
tests/misc_tests/*.m:
tests/mmc_make/*.m:
tests/par_conj/*.m:
tests/purity/*.m:
tests/stm/*.m:
tests/string_format/*.m:
tests/structure_reuse/*.m:
tests/submodules/*.m:
tests/tabling/*.m:
tests/term/*.m:
tests/trailing/*.m:
tests/typeclasses/*.m:
tests/valid/*.m:
tests/warnings/*.{m,exp}:
Make these tests use four-space indentation, and ensure that
each module is imported on its own line. (I intend to use the latter
to figure out which subdirectories' tests can be executed in parallel.)
These changes usually move code to different lines. For the tests
that check compiler error messages, expect the new line numbers.
browser/cterm.m:
browser/tree234_cc.m:
Import only one module per line.
tests/hard_coded/boyer.m:
Fix something I missed.
Estimated hours taken: 2
Branches: main
Fix a bug in inter-module optimization with sub-modules reported
by Michael Day <mikeday@bigpond.net.au>. The symptom was a compiler
abort due to an attempt to take the address of a predicate with
multiple modes. The predicate only had multiple mode declarations
because the declarations were read from both the `.int0' and `.opt'
files for the module.
compiler/post_typecheck.m:
compiler/purity.m:
Remove duplicate modes and report other errors in type
declarations for all predicates in a separate pass before
purity checking and overloading resolution.
tests/valid/Mmakefile:
tests/valid/intermod_nested_module_bug.m:
tests/valid/intermod_nested_module_bug2.m:
Test case.
tests/valid/assoc_list.m:
tests/valid/assoc_list_bug.m:
Rename the assoc_list test case -- it interfered with
other test cases attempting to import the assoc_list
library module.