[m-rev.] for review: improve mmc --make dependency algorithm
Peter Ross
pro at missioncriticalit.com
Fri May 18 11:46:30 AEST 2007
On Thu, May 17, 2007 at 10:23:49PM +1000, Ian MacLarty wrote:
> For review by anyone.
>
> Estimated hours taken: 3
> Branches: main
>
> compiler/make.dependencies.m:
> Do not recompile a module if a submodule of an imported module is
> changed and the module doesn't import the submodule.
> For example if a.m imports b.m, and b.c.m is a submodule of b.m, then
> don't recompile a.m if b.c.m changes.
>
> Add an all_imports option to the transitive_dependencies_type type.
> This option indicates all transitively imported modules and excludes
> modules that are included but not imported.
>
> Change find_transitive_implementation_imports to find only all
> transitive imports, not all imports and includes.
>
> Fix some comments.
>
> Reformat the declaration of of/2 so that mtags recognises it.
>
I would add the following as the justification:
"mmc --make" used to treat include_modules as the equivalent to
import_modules this lead to changes in sub-modules causing
recompilation in modules that didn't even indirectly import
the sub-module because they imported a parent module of the
sub-module. This change avoids these unneeded compilations.
Otherwise this looks fine.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to: mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions: mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the reviews
mailing list