https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78036
Bug ID: 78036 Summary: -MM suppresses error detection Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: pskocik at gmail dot com Target Milestone: --- Example: touch in.h gcc -x c -include in.h - -MD -MF /dev/stdout <<<'int main(){x; return 42;} fails as it should. Changing -MD to -MM causes the failure to go undetected (no stderr output, no nonzero exit status), making it look as if the compilation succeeded. (Notes: Changing -MF /dev/stdout to -MF regular_file makes no difference. Clang has this behavior too)