diff options
-rw-r--r-- | build2/cc/compile-rule.cxx | 5 | ||||
-rw-r--r-- | build2/cc/msvc.cxx | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/build2/cc/compile-rule.cxx b/build2/cc/compile-rule.cxx index 437255e..0ce593e 100644 --- a/build2/cc/compile-rule.cxx +++ b/build2/cc/compile-rule.cxx @@ -2585,7 +2585,10 @@ namespace build2 // if (l != src.path ().leaf ().string ()) { - if (msvc_sense_diag (l, 'D') != string::npos) + // D8XXX are errors while D9XXX are warnings. + // + size_t p (msvc_sense_diag (l, 'D')); + if (p != string::npos && l[p] == '9') continue; text << l; diff --git a/build2/cc/msvc.cxx b/build2/cc/msvc.cxx index 4f63abf..0d3650e 100644 --- a/build2/cc/msvc.cxx +++ b/build2/cc/msvc.cxx @@ -140,7 +140,7 @@ namespace build2 { // While it appears VC always prints the source name (event if the // file does not exist), let's do a sanity check. Also handle the - // command line warnings which come before the file name. + // command line errors/warnings which come before the file name. // for (string l; !eof (getline (is, l)); ) { |