Files
mercury/browser
Zoltan Somogyi 7e8ab98f21 Add a new option, --warn-include-and-non-include.
When enabled, the compiler emits a warning for modules that contain
both include_module declarations, and other constructs. In other words,
it warns about modules that include submodules but are not "packages".

compiler/make_hlds_passes.m:
    Implement the new option.

compiler/options.m:
    Add the new option.

NEWS.md:
    Announce the new option.

compiler/option_categories.m:
    Add a new subcategory for the new option.

compiler/print_help.m:
    Print the new option in the new category.

tests/warnings/help_text.err_exp:
    Expect the documentation of the new option.

browser/Mercury.options:
compiler/Mercury.options:
library/Mercury.options:
mdbcomp/Mercury.options:
    Add commented-out-for-now lines that disable the new option
    for modules that include submodules but are intentionally
    not packages. The three reasons for the latter are

    - that the only thing in the module other than include_module
      declarations is a predicate to print a version id, so a package
      wouldn't improve things (browser, mdb, library/library.m),

    - that changing the module into a package is not worthwhile
      because the module is obsolete (compiler), and

    - that changing the module into a package would cause significant
      disruption for our users (the other modules in the library).
2025-07-27 00:42:17 +02:00
..
2024-12-29 20:53:29 +11:00
2025-05-21 01:37:21 +10:00
2024-12-29 20:53:29 +11:00
2025-01-24 13:38:10 +11:00
2024-07-16 07:32:27 +02:00
2024-12-29 20:53:29 +11:00
2024-12-29 20:53:29 +11:00
2024-12-29 20:53:29 +11:00
2024-12-29 20:53:29 +11:00