http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53677
Bug #: 53677 Summary: GNAT build didn't stop after a fatal error Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassig...@gcc.gnu.org ReportedBy: tschwi...@gcc.gnu.org Working on a GNU/Hurd for for GCC Ada/GNAT, I stumbled over the following issue (which I believe not to be specific to the GNU/Hurd port). I botched up an edit of gcc/ada/s-oscons-tmplt.c (mismatched parentheses; I tried adding the __GNU__ conditional next to the __linux__ one). In the build log I could see the following error message: [...]/gcc/ada/s-oscons-tmplt.c:83:5: error: missing ')' in expression #if (defined (__linux__) || defined (__GNU__) && !defined (_XOPEN_SOURCE) ^ make -C rts \ CC=[...] However -- as this snippet also shows -- the GNAT build didn't stop at this point, which I believe it should have, as this is a "hard" syntax error. And what is perhaps even more bewildering is that despite this fatal error, the build successfully continued up to the very end, and even the make check run produced totally sensible results. I understand that s-oscons-tmplt.c is used for generating the package System.OS_Constants, but how can this have been done successfully if building that file failed?