ghc -M doesn't handle addDependentFile or #included files
ghc -M doesn't emit dependencies specified by TH's addDependentFile, not does it emit dependencies for #included files.
The former is quite hard to do, because it requires compiling the code: we only have the information about addDependentFile calls after compilation. So in order to fix this, ghc -c would have to drop some information somewhere for the build system to pick up.
In theory we should only have to preprocess files to get the list of #included files, and ghc -M already preprocesses all the files. However, currently #included files are picked up by the lexer during parsing, so fixing this isn't trivial.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 7.6.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |