Seems to have caused a bot failure: http://lab.llvm.org:8011/builders/clang-x86-win2008-selfhost/builds/7039
The NOTRIPLE test appears to be picking up the version of MSVC from that installed on the system, so this passes or fails depending on which version of MSVC we find. On Mon, Mar 21, 2016 at 12:44 PM, Nico Weber via cfe-commits <cfe-commits@lists.llvm.org> wrote: > Author: nico > Date: Mon Mar 21 14:44:18 2016 > New Revision: 263974 > > URL: http://llvm.org/viewvc/llvm-project?rev=263974&view=rev > Log: > clang-cl: With -fmsc-version=1900, use MSVS2015 diag formatting. > > Modified: > cfe/trunk/lib/Driver/Tools.cpp > cfe/trunk/lib/Frontend/TextDiagnostic.cpp > cfe/trunk/test/Misc/diag-format.c > > Modified: cfe/trunk/lib/Driver/Tools.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=263974&r1=263973&r2=263974&view=diff > ============================================================================== > --- cfe/trunk/lib/Driver/Tools.cpp (original) > +++ cfe/trunk/lib/Driver/Tools.cpp Mon Mar 21 14:44:18 2016 > @@ -3257,6 +3257,7 @@ VersionTuple visualstudio::getMSVCVersio > if (Major || Minor || Micro) > return VersionTuple(Major, Minor, Micro); > > + // FIXME: Consider bumping this to 19 (MSVC2015) soon. > return VersionTuple(18); > } > return VersionTuple(); > > Modified: cfe/trunk/lib/Frontend/TextDiagnostic.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/TextDiagnostic.cpp?rev=263974&r1=263973&r2=263974&view=diff > ============================================================================== > --- cfe/trunk/lib/Frontend/TextDiagnostic.cpp (original) > +++ cfe/trunk/lib/Frontend/TextDiagnostic.cpp Mon Mar 21 14:44:18 2016 > @@ -819,7 +819,15 @@ void TextDiagnostic::emitDiagnosticLoc(S > switch (DiagOpts->getFormat()) { > case DiagnosticOptions::Clang: > case DiagnosticOptions::Vi: OS << ':'; break; > - case DiagnosticOptions::MSVC: OS << ") : "; break; > + case DiagnosticOptions::MSVC: > + // MSVC2013 and before print 'file(4) : error'. MSVC2015 gets rid of the > + // space and prints 'file(4): error'. > + OS << ')'; > + if (LangOpts.MSCompatibilityVersion && > + !LangOpts.isCompatibleWithMSVC(LangOptions::MSVC2015)) > + OS << ' '; > + OS << ": "; > + break; > } > > if (DiagOpts->ShowSourceRanges && !Ranges.empty()) { > > Modified: cfe/trunk/test/Misc/diag-format.c > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/diag-format.c?rev=263974&r1=263973&r2=263974&view=diff > ============================================================================== > --- cfe/trunk/test/Misc/diag-format.c (original) > +++ cfe/trunk/test/Misc/diag-format.c Mon Mar 21 14:44:18 2016 > @@ -4,13 +4,15 @@ > // > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -fmsc-version=1300 > %s 2>&1 | FileCheck %s -check-prefix=MSVC2010 > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc > -fms-compatibility-version=13.00 %s 2>&1 | FileCheck %s > -check-prefix=MSVC2010 > -// RUN: %clang -fsyntax-only -fdiagnostics-format=msvc %s 2>&1 | FileCheck > %s -check-prefix=MSVC > +// RUN: %clang -fsyntax-only -fdiagnostics-format=msvc %s 2>&1 | FileCheck > %s -check-prefix=MSVCNOTRIPLE > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -fmsc-version=1300 > -target x86_64-pc-win32 %s 2>&1 | FileCheck %s -check-prefix=MSVC2010 > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc > -fms-compatibility-version=13.00 -target x86_64-pc-win32 %s 2>&1 | FileCheck > %s -check-prefix=MSVC2010 > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -target > x86_64-pc-win32 %s 2>&1 | FileCheck %s -check-prefix=MSVC > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -fmsc-version=1300 > -target x86_64-pc-win32 -fshow-column %s 2>&1 | FileCheck %s > -check-prefix=MSVC2010 > // RUN: %clang -fsyntax-only -fdiagnostics-format=msvc > -fms-compatibility-version=13.00 -target x86_64-pc-win32 -fshow-column %s > 2>&1 | FileCheck %s -check-prefix=MSVC2010 > -// RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -target > x86_64-pc-win32 -fshow-column %s 2>&1 | FileCheck %s -check-prefix=MSVC > +// RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -fmsc-version=1800 > -target x86_64-pc-win32 -fshow-column %s 2>&1 | FileCheck %s > -check-prefix=MSVC2013 > +// RN: %clang -fsyntax-only -fdiagnostics-format=msvc -target > x86_64-pc-win32 -fshow-column %s 2>&1 | FileCheck %s -check-prefix=MSVC Did you mean to leave this test disabled? > +// RUN: %clang -fsyntax-only -fdiagnostics-format=msvc -fmsc-version=1900 > -target x86_64-pc-win32 -fshow-column %s 2>&1 | FileCheck %s > -check-prefix=MSVC2015 > // > // RUN: %clang -fsyntax-only -fdiagnostics-format=vi %s 2>&1 | FileCheck > %s -check-prefix=VI > // > @@ -20,11 +22,9 @@ > // > // RUN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > -fmsc-version=1300 %s 2>&1 | FileCheck %s -check-prefix=MSVC2010-FALLBACK > // RUN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > -fms-compatibility-version=13.00 %s 2>&1 | FileCheck %s > -check-prefix=MSVC2010-FALLBACK > -// RUN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > %s 2>&1 | FileCheck %s -check-prefix=MSVC-FALLBACK > - > - > - > - > +// RUN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > %s -fmsc-version=1800 2>&1 | FileCheck %s -check-prefix=MSVC2013-FALLBACK > +// RN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > %s 2>&1 | FileCheck %s -check-prefix=MSVC-FALLBACK ... and this one? > +// RUN: not %clang -fsyntax-only -Werror -fdiagnostics-format=msvc-fallback > %s -fmsc-version=1900 2>&1 | FileCheck %s -check-prefix=MSVC2015-FALLBACK > > > > @@ -36,10 +36,15 @@ > #endif bad // extension! > // DEFAULT: {{.*}}:36:8: warning: extra tokens at end of #endif directive > [-Wextra-tokens] > // MSVC2010: {{.*}}(36,7) : warning: extra tokens at end of #endif directive > [-Wextra-tokens] > +// MSVC2013: {{.*}}(36,8) : warning: extra tokens at end of #endif directive > [-Wextra-tokens] > // MSVC: {{.*}}(36,8) : warning: extra tokens at end of #endif directive > [-Wextra-tokens] > +// MSVCNOTRIPLE: {{.*}}(36,8): warning: extra tokens at end of #endif > directive [-Wextra-tokens] > +// MSVC2015: {{.*}}(36,8): warning: extra tokens at end of #endif directive > [-Wextra-tokens] > // VI: {{.*}} +36:8: warning: extra tokens at end of #endif directive > [-Wextra-tokens] > -// MSVC_ORIG: {{.*}}(36) : warning: extra tokens at end of #endif directive > [-Wextra-tokens] > +// MSVC_ORIG: {{.*}}(36): warning: extra tokens at end of #endif directive > [-Wextra-tokens] > // NO_COLUMN: {{.*}}:36: warning: extra tokens at end of #endif directive > [-Wextra-tokens] > // MSVC2010-FALLBACK: {{.*}}(36,7) : error(clang): extra tokens at end of > #endif directive > +// MSVC2013-FALLBACK: {{.*}}(36,8) : error(clang): extra tokens at end of > #endif directive > // MSVC-FALLBACK: {{.*}}(36,8) : error(clang): extra tokens at end of #endif > directive > +// MSVC2015-FALLBACK: {{.*}}(36,8): error(clang): extra tokens at end of > #endif directive > int x; > > > _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits