If a module is unavailable, and we see a #include of one of its headers, we silently textually include that header, which will lead to very difficult to diagnose compilation performance problems, weird errors while compiling, and so on. We should error on this case.
Could you spell out what unavailable means here? Is it module.map available/read but for some reason falling back to textual header?
(In reply to comment #1) > Could you spell out what unavailable means here? Is it module.map > available/read but for some reason falling back to textual header? "unavailable" means that we can't build the module for some reason. That can be because it names a header that does not exist, or because it says "requires blah" and we don't have feature 'blah', or possibly other reasons I forgot =)
*** Bug 21216 has been marked as a duplicate of this bug. ***
I have a patch diagnosing missing headers. It does while parsing the module map, at the end of parsing a module definition. Is this the right place or it should be somewhere else?
This keeps hitting me as well while modularizing. I somehow muck up something in the module map, the module disappears silently and everything reverts to textual inclusion and it takes me awhile to notice and backtrack. Did you post a patch somewhere Vassil? I'm very a much newb as well but having some kind of diagnostic for this would be great.