aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build2/cc/compile-rule.cxx5
-rw-r--r--build2/cc/msvc.cxx2
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)); )
{