On 7/18/23 16:52, Jason Merrill wrote:
On 6/25/23 12:36, Ben Boeckel wrote:
On Fri, Jun 23, 2023 at 08:12:41 -0400, Nathan Sidwell wrote:
On 6/22/23 22:45, Ben Boeckel wrote:
On Thu, Jun 22, 2023 at 17:21:42 -0400, Jason Merrill wrote:
On 1/25/23 16:06, Ben Boeckel wrote:
They affect the build, so report them via `-MF` mechanisms.
Why isn't this covered by the existing code in preprocessed_module?
It appears as though it is neutered in patch 3 where
`write_make_modules_deps` is used in `make_write` (or will use that name
Why do you want to record the transitive modules? I would expect just noting the
ones with imports directly in the TU would suffice (i.e check the 'outermost'
arg)
FWIW, only GCC has "fat" modules. MSVC and Clang both require the
transitive closure to be passed. The idea there is to minimize the size
of individual module files.
If GCC only reads the "fat" modules, then only those should be recorded.
If it reads other modules, they should be recorded as well.
Please explain what you mean by fat modules. There seems to be confusion.
But wouldn't the transitive modules be dependencies of the direct imports, so
(re)building the direct imports would first require building the transitive
modules anyway? Expressing the transitive closure of dependencies for each
importer seems redundant when it can be easily derived from the direct
dependencies of each module.
Jason
--
Nathan Sidwell