C++ Logo


Advanced search

Re: [Tooling] Modules feedback

From: Ben Boeckel <ben.boeckel_at_[hidden]>
Date: Mon, 11 Feb 2019 17:23:37 -0500
On Mon, Feb 11, 2019 at 16:59:44 -0500, Steve Downey wrote:
> If it doesn't exist because I'm in the middle of adding it, or misspelled
> it, etc. There's lots of reasons incremental builds get invoked. This is
> equivalent to a missing header file. I might have not written it yet, or
> added the target dependency, or installed the package, etc. I don't mean
> the case where the bmi doesn't exist. That's the normal case. But the
> scanner can't assume that the build has built everything, so it has to be
> more forgiving. But that means more errors downstream.

I'd *much* rather the scanner error out saying "no such file to scan"
than later getting "no such module found". Your approach is even worse
is an incorrect build because a stale module gets found[1]. The deferred
error implies that broken builds are tolerated instead of being called
out at the point of first detection.


[1]Imagine moving the source from deplib to samelib. The deplib version
of the module may still be laying around, but an "exist status 0" build
is *incorrect* in this case. That is much scarier for me than a build
graph that errors out with a useful message.

Received on 2019-02-11 23:23:44