If you are trying to get the preprocessed output file of a MFC file using the -E -CC options, clang will crash. Here is a reduction: test.cpp: #define A text//\ clang -E -CC test.cpp
*** Bug 10683 has been marked as a duplicate of this bug. ***
It has nothing to do with MFC though. Any file containing "//\" with an empty line afterwards will cause a crash.
This code: // \ int a; //dead line Will be preprocessed as: // int a; //dead line Thus the second line is lost.
Fixed in r147091.
The bug is active in clang 3.6.2. This code: int main(int argc, char* argv[]) { // \ int a; //dead line int b; return 0; } is preprocessed as: int main(int argc, char* argv[]) { int b; return 0; }