mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-23 13:23:47 +00:00
Estimated hours taken: 4 Fix a limitation of the current nested module support: ensure that we check for attempts to import inaccessible modules. compiler/modules.m: Check for attempts to import inaccessible modules (modules whose parent has not been imported, or for which there is no `include_module' declaration in the parent's interface). compiler/intermod.m: Modify the way we import `.opt' files. The previous method temporarily set the items field of the module_imports structure to [], but check_module_accessibility relies on the assumption that the items field contains the items for all modules previously read in. tests/invalid/Mmakefile: tests/invalid/test_nested.m: tests/invalid/test_nested.err_exp: tests/invalid/parent.m: tests/invalid/parent.private_child.m: tests/invalid/parent.public_child.m: tests/invalid/parent.undeclared_child.m: tests/invalid/parent.undeclared_child.err_exp: tests/invalid/parent2.m: tests/invalid/parent2.child.m: Add some tests for the above change. doc/reference_manual.texi: Update the "bugs and limitations" sub-section of the modules chapter to reflect the new status quo.
7 lines
107 B
Mathematica
7 lines
107 B
Mathematica
% This is part of the test_nested.m test case.
|
|
|
|
:- module parent2.
|
|
:- interface.
|
|
|
|
:- include_module child.
|