This patch makes the minimizer more conservative to avoid missing dependency files that are brought in by __has_include PP expressions that occur in a condition of an #if/#elif that was previously skipped. The __has_include PP expressions can be used in an #if/#elif either directly, or through macro expansion, so we can't detect them at the time of minimization.
It'll be possible to skip certain #if/#elif in the future by doing more minimizer optimizations (e.g. skip #if 0). Furthermore, @Bigcheese is working on clarifying the allowed usage of __has_include in the standard, as it seems that this kind of usage should actually be disallowed. This will hopefully allow us skip these #if/#elif again in the future.
I'd prefer to structure this comment differently, something like:
This rephrases it as a potential future optimization instead of one that has to be skipped, which I think makes it easier to reason about.